Trace Construction
Methodology and Applications (more)
Broadly speaking, we want to look at the observation of dynamic
processes from the traces they leave.
We focuse particularly on providing semantics to tracers, i.e. to
generators of traces, and the traces they produce. We seek semantics as
independent as possible from those of the processes or from the ways
the tracers produce them.
We must also clearly distinguish what depends on what we call here
``trace''and what depends on process analysis (monitoring, presentation
of the traces or pretty printing, visualization, performance analysis,
debugging, ...), which all, in one way or another, directly or
indirectly, from inside or independently, in synchronous or
asynchronous mode, use traces for analytical purposes but do not
produce them. This study does not concern the nature nor the form of
these process observers. They are always, by definition, external, i.e.
outside of the observed process and use the traces as input data.
One can always consider that between an observer (or process observer)
and an observed phenomenon (or observed process) there is an
object that we call actual
trace. The actual trace is the actually recognizable footprints
left by a process or a set of processes, and therefore ``readable'' by
other processes, in real time or post mortem. The observed
phenomenon is regarded here as one closed process (this concerns
all the data and functions that it handles), which we only known by its
actual trace.
We will also introduce the concept of virtual trace. The virtual trace is
the sequence of events representing the evolution of a state which
contains all that one can or wants to know about this or these
processes, i.e. all their ``observables''. This development may
eventually be formalised by a model of states transitions, i.e. by a
state domain and a transition function formalizing the step from one
state to another. This semantics, equipped with all extraction
operations producing the actual trace, will be called the observational semantic (OS) because
it represents all what one is likely to know or to describe about the
process, viewed from outside of it. However, the virtual trace itself,
taken alone, can also be regarded as a semantics.
Finally, this approach is based on the concept of full trace (actual or
virtual)} (full in the sense that the totality of knowledge regarding
the observed process is there explicitly or implicitly contained). This
constitutes a basis for studying the modular construction of tracers
and traces, using only the notions of trace enrichment, sub-trace,
fusion, trace abstraction. We also study the notion of genericity of a
trace, i.e. the possibility to give semantics to a tracer, which is
valid for a family of observed processes.
We are currently investigating the use of the fluent calculus as
modeling tool for the observational semantics in the framework of the
projets C4RBCP.
Illustration of the trace semantics