This directory shows how to build an app using LoopInvGen as an OCaml library.
Our example app, called App, resides in the App.ml file.
The dune file within app directory specifies the dependencies for our app (called App) and some build profiles (optional).
The dune file is quite self-explanatory.
To build App, you may either:
- Execute
dune build App.exewithinLoopInvGen/appdirectory, or - Execute
dune build app/App.exewithinLoopInvGendirectory
To run App, execute dune exec app/App.exe within LoopInvGen directory.
It should generate an output similar to the following:
PI for { x = abs(x) } with feature learning:
The precondition is: (>= x 0)
> Total time (ms): 0.30517578125
> Synth time (ms): [0.]
PI for { append(l1,l2) = [] } without feature learning:
The precondition is: (and (= y []) (= x []))
> Total time (ms): 0.0152587890625
> Synth time (ms): []