LARA

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
regsy [2010/06/04 16:38]
vkuncak
regsy [2011/01/12 17:08]
vkuncak
Line 2: Line 2:
  
 RegSy (Regular Synthesis) is a synthesis tool that can be used to build functions from specification written in WS1S (or, equivalently,​ specifications given by automata, thanks to the WS1S-automata connection). RegSy (Regular Synthesis) is a synthesis tool that can be used to build functions from specification written in WS1S (or, equivalently,​ specifications given by automata, thanks to the WS1S-automata connection).
 +
 +==== Paper Describing the Algorithm =====
 +
 +[[http://​lara.epfl.ch/​~kuncak/​papers/​HamzaETAL10SynthesisforRegularSpecificationsoverUnboundedDomains.html|Synthesis for Regular Specifications over Unbounded Domains]]
  
 ==== Examples ==== ==== Examples ====
Line 9: Line 13:
 ==== Download ==== ==== Download ====
  
- + * [[http://lara.epfl.ch/~kuncak/​regsy.tar.gz|Click Here to Download RegSy]]
- +
-==== Building Regsy ==== +
- +
-  ​* ​Download and install ​[[http://www.scala-lang.org/|scala]] (the code was tested with Scala 2.8 RC2). +
-  * Type +
-  ./symbbuild+
  
 ==== Running Regsy ==== ==== Running Regsy ====
  
-  * Download ​[[http://​www.brics.dk/​mona/​|MONA]] tool used to build the automaton from WS1S specification. RegSy specifications are currently written as MONA input files+  * Make sure you have a recent Java distribution 
 +  * Make sure you have [[http://​www.brics.dk/​mona/​|MONA]] tool used to build the automaton from WS1S specification. RegSy specifications are currently written as MONA input files
  
   * To run the program use the syntax   * To run the program use the syntax
Line 39: Line 38:
 Once your function has been synthesized,​ you can try it on different inputs. Once your function has been synthesized,​ you can try it on different inputs.
  
-When you run some filename.mona on Regsy, it will automatically save the synthesized function on filename.sav; you can then run it using+When you run some filename.mona on Regsy, it will automatically save the synthesized function on filename_tracks.sav; you can then run it using
  
-  ./run -l addition.sav "0 1"+  ./run -l addition_01.sav
  
 Regsy also have a streaming functionality. You can use it using for instance on: Regsy also have a streaming functionality. You can use it using for instance on:
Line 48: Line 47:
  
 It will assume that the specification is k-causal (in that example, 0-causal) and then you will be able to give a file as input stream, and the program will display the output stream in return. The second 0 corresponds to the input track that you want to use. It will assume that the specification is k-causal (in that example, 0-causal) and then you will be able to give a file as input stream, and the program will display the output stream in return. The second 0 corresponds to the input track that you want to use.
 +
 +==== Building Regsy ====
 +
 +  * Download and install [[http://​www.scala-lang.org/​|scala]] (the code was tested with Scala 2.8 RC2).
 +  * Type
 +  ./symbbuild