Date: 02 Jun 2005

leanEA: A lean evolving algebra compiler

* Final gross prices may vary according to local VAT.

Get Access

Abstract

The Prolog program “term_expansion((define C as A with B), (C=>A:-B,!)). term-expansion((transition E if C then D), ((transition E):-C,!,B,A,(transition _))):-rearrange(D,B,A). rearrange((E,F),(C,D),(A,B)):-rearrange(E,C,B), rearrange(F,D,A). rearrange(F:=G, ([G]=>*[E], F=. [C¦D], D=>*B,A=. [C¦B]), asserta(A=>E)). [G¦H]=>*[E¦F]:-(G=>E; G=.[C¦D], D=>*B,A=.[C¦B],A=>E), !,H=>*F. []=>*[]. A=?B:- [A,B]=>*[D,C], D==C.” implements an efficient and flexible simulator for evolving algebra specifications.