- Sep 10, 2014
-
-
Matthew Dawson authored
Add a SAL grid generator, using the depth first search walker. It currently just generates simple IF statements for each condition, nest IF statements as appropriate.
-
Matthew Dawson authored
To avoid duplication between the EventB and SAL generator, rename the EventB walker to a more general name. Also introduce a special interface, to ensure a depth first walker is never used against a breadth first generator, and vice versa.
-
Matthew Dawson authored
Add support to actually declare variables. Currently only the real and booleans are supported.
-
Matthew Dawson authored
Intial work on SAL code generation. For now, just deal with Real and Boolean expressions.
-
Matthew Dawson authored
By default, all Simulink enumerated values are formed as: enumerationtype.constant The current MATLAB parser in jTET fails to recognize this. Fix this so that it recognizes these constants properly. Also add a test to verify this mode. Note that the original style of just the constant is still ok, thought in a TET block that style may not work.
-
Matthew Dawson authored
Variable types now follow variable names in terms of naming rules. This relaxes them to allow numbers in the name.
-
- Sep 05, 2014
-
-
The file name that was used in the refinement relation tag was being incorrectly generated as tablenameMi, where tablename was the tablename, and i was the refinement layer. However, the actual files were called tablename_Mi. Fix this by using the same function to generate the name, and standardize on the tablename_Mi notation.
-
- Aug 29, 2014
-
-
From this version, two kinds of mode, i.e., Single Output No Refinement (SONR),Single Output With Refinement(SOWR) are supported.
-
Seperate the creation of project and generation of table xml files. So that in the future we can support multiple tables in a project easily.
-
The JUnit paramerized class is used here instead of using a massive class repeating the various setup/test procedures.
-
- Aug 22, 2014
-
-
Yanjun Jiang authored
Combine the several parameters in the constructor to one table object parameter to make the interface more clean.
-
Yanjun Jiang authored
Make sure all closeable objects in EventBFileWriter are properly closed, even in the presence of exceptions.
-
- Aug 20, 2014
-
-
Yanjun Jiang authored
This new table name property is added when generating EventB files, but can be used for other purpose too.
-
- Aug 11, 2014
-
-
Matthew Dawson authored
maven-assembly-plugin: 2.4 -> 2.4.1, bug fixes mostly.
-
Matthew Dawson authored
Since jTET is now getting preped for deployment to Maven Central, update the POM file, adding various metadata tags.
-
- Jul 30, 2014
-
-
Matthew Dawson authored
Update some out of date dependencies. All test still pass, so everything should be fine.
-
- Jul 07, 2014
-
-
Matthew Dawson authored
Underscores are fine characters for names. Allow their use as well. This is just a change in the lexer, which wouldn't recognize them.
-
Matthew Dawson authored
To ensure better test coverage, add boolean and predicate subtypes to the list of generic tests. Both are again very simple additions, and all current generators are fine with them. They are skippable in the usual way.
-
Matthew Dawson authored
At least for the SAL generator for SimCheck, I need to transform the variable names. Thus add the ability for Variables to have different names outputed during generation. This ensures that a given variable always has its name match as expected. Also update the various tests to exercise this new functionality.
-
Matthew Dawson authored
jTET needs a large amount of throw away instances of types or their marker for its work. Instead of creating a new instance each time, use a static instance to avoid the work. It also makes it more obvious when something is temporary.
-
- Jul 01, 2014
-
-
In the previous version, output value is set to begin with 0 and increase by 1 each column, like 0,1,2,3... Now the output value is really aquired from its corresponding cells.
-
Until now we have test cases for one layer table, two layers table, three layerstable and one Simple Insulin Infusion Pump (IIP) table.
-
For now, only single output single grid tables are supported, and only with simple one operator expressions. Each row in the conditions grid corresponds a single event in EventB, with each cell in the row corresponding to a guard for the event.
-
- May 22, 2014
-
-
Matthew Dawson authored
A missing throw keyword allowed an exceptional circumstance to continue, when an enumeration name conflicted with either another enumeration name or with a variable. Add appropriate tests to catch such issues and add the throw keyword.
-
Matthew Dawson authored
Make the input and output variable list have more useful names. Before, they carried either a legacy idea of what they might have been, or just generic and confusing.
-
Matthew Dawson authored
Add an initial table description to hold what a table is. Currently I'm not sure if it is best, as it limits tables to 2 dimensions, and allows for multiple variable 2 dimensional tables. But for now it fully represents MATLAB's TET tables (though TET can't represent all tables represented here ...).
-
Matthew Dawson authored
When dealing with a hierarchical grid, it is useful to know how many cases there are. Add a simple function to do so. Also add some quick unit tests to ensure it functions.
-
- May 20, 2014
-
-
Matthew Dawson authored
Ignore IDE and generated files in this repository. This file is recreated here as the ignore rules used to be in the root .gitignore.
-
Matthew Dawson authored
As discussed, do the package rename now. All MATLAB code is adjusted as necessary, all java tests pass, and the quadratic example continues to typecheck, as expected.
-
Matthew Dawson authored
As discussed, rename Matlab2SMT to jTET. Matlab2SMT is a bad name for the java project, and with its imminent removal first rename it to avoid breakage in MATLAB code.
-
Matthew Dawson authored
Matlab2SMT is moving towards being a real library. Thus delete the useless App class that makes it look like a library. Its only useful function can be done manually anyways.
-
- May 16, 2014
-
-
Matthew Dawson authored
To comply with MATLAB Central's license policy, change all files to be BSD licenced. Also add a LICENCE file to the root of the project folder, to make it more obvious the code is 3 clause BSD. The Licence text is copied from MATLAB Central.
-
- Apr 30, 2014
-
-
Matthew Dawson authored
Add a 2d grid to the java code. It uses List<> to make the 2d grid itself, but hides all implementation details, to allow for future modifications.
-
Matthew Dawson authored
Update antlr4 version to 4.2.2, and apache commons to 3.3.2. Also fully specify all plugin versions. While the latest should be used by maven, experience shows this is always the case. Thus verify everything.
-
- Apr 29, 2014
-
-
Matthew Dawson authored
Due to how the matlab grammar was setup, things would break horribly on systems with case sensitive file names. This occurred as some elements had names differing only by case, which both Antlr and Java were fine with, but relied on the system have case insensitive file names. Mac/Windows would thus break in most cases, along with Dropbox. Fix by removing these names. I don't use them, and the one useful case is handled differently, which shouldn't cause issues in the future.
-
- Apr 25, 2014
-
-
Matthew Dawson authored
-
Matthew Dawson authored
Make sure enumerated types are only emitted once, even when there is more then one variable declared with the type. Also fix the generators so they actually ensure this. Also, CVC3Generator got some cleanup around the relevant code.
-
Matthew Dawson authored
There is no reason to use a HashMap in the test, which makes checking the result harder. So, instead just use a LinkedHashMap so the result is always the same.
-
Matthew Dawson authored
Since variable subtypes can depend upon previously declared variables, emit the variables in the same order as defined. While some languages may not care, it is better to be safe then sorry. Also, since variables are now always emitted in defined order, remove some excess try .. catch blocks, which were attempting to handle the unknown order.
-
Matthew Dawson authored
Add support to SMTLIB and CVC3 to generate enumeration types.
-