FermaT Transformation System
- FermaT Transformation System
The FermaT Transformation System is a powerful industrial-strength program transformation system based on the WSL language.
FermaT has been used successfully in several major assembler to C migration projects: each project involved converting over half a million lines of hand-written assembler code to efficient and maintainable C code.
FermaT is available as free software under the GNU General Public License (GPL).
An example of a program transformation is Semantic Slicing. Consider the following WSL program:
total:= 0;i := 0;evens := 0;noevens := 0;odds := 0;noodds := 0;n := n0;WHILE i <= n DO evenflag := A [i] MOD 2; evenflag := 0; IF FALSE THEN evens := evens + A [i] ; noevens := noevens + 1 ELSE odds := odds + A [i] ; noodds := noodds + 1 FI; total := total + A [i] ; i := i + 1 OD;IF noevens <> 0 THEN meaneven := evens/noevens ELSE meaneven := 0 FI;IF noodds <> 0 THEN meanodd := odds/noodds ELSE meanodd := 0 FI;mean := total/(n+1);evendifference := ABS(meaneven - mean);odddifference := ABS(meanodd-mean)
Suppose we are interested in the final value of the variable evendifference. Save the program as a text file test-1.wsl and run the transformation:
dotrans test-1.wsl test-2.wsl Semantic_Slice data=evendifference
This generates the output file test-2.wsl:
evendifference := ABS(REDUCE("+", A [0..n0] ) / (n0 + 1))
See [http://www.cse.dmu.ac.uk/~mward/martin/papers/csmr2005-t.pdf this paper] for more information about semantic slicing.
[http://www.cse.dmu.ac.uk/~mward/fermat.html Download FermaT here]
Wikimedia Foundation.
2010.
Look at other dictionaries:
Cartesian coordinate system — Illustration of a Cartesian coordinate plane. Four points are marked and labeled with their coordinates: (2, 3) in green, (−3, 1) in red, (−1.5, −2.5) in blue, and the origin (0, 0) in purple. A Cartesian coordinate system specifies each point… … Wikipedia
Program refinement — Data transformation/Source transformation Concepts metadata · data mapping data transformation · model transf … Wikipedia
mathematics — /math euh mat iks/, n. 1. (used with a sing. v.) the systematic treatment of magnitude, relationships between figures and forms, and relations between quantities expressed symbolically. 2. (used with a sing. or pl. v.) mathematical procedures,… … Universalium
Projet:Mathématiques/Liste des articles de mathématiques — Cette page n est plus mise à jour depuis l arrêt de DumZiBoT. Pour demander sa remise en service, faire une requête sur WP:RBOT Cette page recense les articles relatifs aux mathématiques, qui sont liés aux portails de mathématiques, géométrie ou… … Wikipédia en Français
Arithmetique modulaire — Arithmétique modulaire Couverture de l’édition originale des Recherches arithmétiques de Gauss, livre fondateur de l’arithmétique modulaire. En mathématiques et plus précisément en théorie algébrique des nombres, l’arithmétique modulaire est un… … Wikipédia en Français
Arithmétique Modulaire — Couverture de l’édition originale des Recherches arithmétiques de Gauss, livre fondateur de l’arithmétique modulaire. En mathématiques et plus précisément en théorie algébrique des nombres, l’arithmétique modulaire est un ensemble de méthodes… … Wikipédia en Français
Arithmétique modulaire — Couverture de l’édition originale des Recherches arithmétiques de Gauss, livre fondateur de l’arithmétique modulaire. En mathématiques et plus précisément en théorie algébrique des nombres, l’arithmétique modulaire est un ensemble de méthodes… … Wikipédia en Français
Arithmétique modulaire (synthèse) — Arithmétique modulaire Couverture de l’édition originale des Recherches arithmétiques de Gauss, livre fondateur de l’arithmétique modulaire. En mathématiques et plus précisément en théorie algébrique des nombres, l’arithmétique modulaire est un… … Wikipédia en Français
Arithmétique modulo — Arithmétique modulaire Couverture de l’édition originale des Recherches arithmétiques de Gauss, livre fondateur de l’arithmétique modulaire. En mathématiques et plus précisément en théorie algébrique des nombres, l’arithmétique modulaire est un… … Wikipédia en Français
geometry — /jee om i tree/, n. 1. the branch of mathematics that deals with the deduction of the properties, measurement, and relationships of points, lines, angles, and figures in space from their defining conditions by means of certain assumed properties… … Universalium