|Until August, 2008|
|Lab. LACL – EA 4219||Lab. IBISC – FRE 3190 CNRS – LIS Project|
|Building P2 – 2nd floor - room 240||Tour Evry-2|
|Faculté des Sciences et Technologie||523 Place des terrasses de l'Agora|
|61 avenue du Général de Gaulle||91000 Évry Cedex|
|94010 Créteil Cedex|
| olivier DOT michel AT u-pec.fr||michel AT ibisc.univ-evry DOT fr|
- 1997 Associate Professor at the university of Évry
- 1996 Attaché Temporaire d'Enseignement et de Recherches at university of Orsay
- 1995 Military service
A complete (as of 2007, september) curriculum vitae.
- 1992 Master M.I.S.I. at university Paris VI, Versailles Saint-Quentin
Over the last 10 years or so, I have been working on the following projects
which are detailed below (more can be found in Research).
The MGS Project (2000-)
New sophisticated applications are simulations of dynamical systems with a dynamical structure. Paradigmatic examples, in the context of Evry are given by developmental processes in biology. The modelling and the simulation of these processes are one of the goals of the systemic biology program. They have motivated the start of the MGS 1) project soon after the involvement of the LaMI into bio-informatics.
MGS is a rule-based language. A rule is similar to a rewriting rule but acts on almost any kind of data structure. This is possible through a unifying point of view where each data structure is equipped with its neighborhood relationship. The neighborhood relationship enables the deﬁnition of a suitable notion of part and a rule speciﬁes the replacement of a part by another part. A set of rules is called a transformation. The deﬁnition of a transformation is similar to the speciﬁcation of a function by case and transformations can be smoothly integrated into any functional language like ML.
The 8 1/2 Project (1992-2000)
The 8 1/2 project has grown in the 1990’s in a computer architecture team developing new parallel architectures. As a matter of fact, stream representing trajectories are also sequential threads of control and multiple streams mean parallel threads of computation. In addition, the instantaneous state of a dynamical system is often a massive object (e.g., in ﬁnite elements methods) that can be computed using data-parallel operations. My contributions in this project rise at a moment where the static core (i.e., the features of the language that can be statically analyzed with respect to the parallel implementation) was well understood and where new dynamic data and control structures had to be designed and developed to face more sophisticated applications.
At the university of Paris Est
I give this year two courses at the École Supérieure d'Informatique Appliquée à la Gestion
one course, with F. Gava and A. Spicher, at the Computer System's Safety Master at Université Paris Est
and one (very short) course, with J.-L. Giavitto, at the Interdisciplinary Approcah to Life Science Master
More is found here.
Previously at the university of Evry
I then taught2) at the university of Evry from 1997 to 2007 in the following courses:
- functional programming in L1,
- C programming language in L1 and L2,
- computer architecture in L2,
- operating systems and Unix, networking, development tools, X11 in L2,
- logics in L3,
- human-computer interactions in L3,
- advanced data-structures and their algorithms in L3,
- advanced functional programming, compiling of an imperative programming language,
- lambda-calculus, combinatory logics, virtual machines in M1,
- methods and tools for modeling and simulation in M1,
- data-parallelism, unconventional programming languages, modeling of dynamical systems with a dynamical structure in M2,
- rewriting systems for biological modeling in M2 Bio-Informatics,
- modelling and simulation at the ENSIIE Master's degree.
I have a lot of slides for most of these courses; they are available upon request.
At the university of Orsay
I started my teaching activities as I was a Ph.D. student at Orsay. I taught three years of Logo as a mean to bring students to the notions of data and control structures. It is an interesting easy to learn (unlike Forth) functional language that has very simple graphic commands that, once combined, produce complex drawings. It is a good way of explaining –and convincing of the importance of– recursive programming.
- member of the editorial board of the french journal Techniques et Sciences Informatiques