- 19 Jan, 2017 2 commits
-
-
Adam Nelson authored
-
Adam Nelson authored
-
- 18 Jan, 2017 1 commit
-
-
Alexander Soen authored
Currently the expected translation function works for constants. This needs to be extended for other term types. The robustness of the type inference can also be improved on. Currently the new type is generated by appending new elements to a list which has an implicit ordering.
-
- 12 Jan, 2017 4 commits
-
-
Adam Nelson authored
-
Adam Nelson authored
-
Adam Nelson authored
-
Adam Nelson authored
-
- 11 Jan, 2017 1 commit
-
-
Adam Nelson authored
-
- 10 Jan, 2017 4 commits
-
-
Alexander Soen authored
-
Alexander Soen authored
-
Alexander Soen authored
Basic testcases work with valid typing. To do: -- Add type-checking to provide an error when set functions cannot be translated -- Add other cases
-
Adam Nelson authored
-
- 05 Jan, 2017 1 commit
-
-
Alexander Soen authored
Appart from creating the standard ml framework for input files for s-expressions, the majority of the testing with the small language is complete. To do: - Start translating the main project
-
- 04 Jan, 2017 2 commits
-
-
Alexander Soen authored
-
Alexander Soen authored
Script added parses an s-expression into a statement in the defined lanugage. Translation is successful. (Note: do notation in function definitions will not translate) To do: - Create test cases for the s-expression parser - Create a parser for enviromental variables - Create framework for inputing s-expressions in sml
-
- 03 Jan, 2017 1 commit
-
-
Adam Nelson authored
-
- 19 Dec, 2016 4 commits
-
-
Alexander Soen authored
-
Alexander Soen authored
-
Alexander Soen authored
Bugs fixed are the missing case in the schedule script. Naming inconsistencies were rectified in the different scripts. The folder hierarchy was also fixed.
-
Alexander Soen authored
-
- 18 Dec, 2016 4 commits
-
-
Alexander Soen authored
-
Alexander Soen authored
-
Alexander Soen authored
-
Alexander Soen authored
The extExprScript.sml theorem has successfully been able to create a translation file which has sml code in it. A seperate script file was created where all the translation of HOL4 code will occur. Another script file will then translate that code from a theorem to an output .ml.txt file. Things To Do: -- Translate the reset of the files -- Remove the translation commands in the original script files
-
- 14 Dec, 2016 3 commits
-
-
Alexander Soen authored
-
Alexander Soen authored
Attempts in proofs also in comments
-
Adam Nelson authored
The new symbolic computation system finally works! Factorial runs again, albeit slower than before. Load/Store isn't working yet, but only because global cells aren't preallocated. Because the Mu spec says that newly-allocated memory locations are zeroed out, option values for unallocated spaces in data structures have been removed, and newly-allocated values are filled with 0/NULL.
-
- 12 Dec, 2016 1 commit
-
-
Alexander Soen authored
The "translate" function was called on the find_steps function and the eval_n_steps function. Holmake did not return an error so the compatibility of the HOL functions to cakeml is assumed to be good. Notes: -- When functions in HOL are being translated all functions within that function must be previously translated explicitly. -- It seems that CakeML does not translate lambda expressions well. -- Functions must be translated explicitly again when calling from another library/script Things To Do: -- Compile the HOL code using CakeML. -- Explore S-expressions. -- Fix the fibonacci test, it partially works but fib_n_def does not seem to evaluate down to a number, only some-kind of expression format. -- Prove some properties about the expression language.
-
- 09 Dec, 2016 1 commit
-
-
Alexander Soen authored
Have gotten the evaluation functions to translate currently. The fibonacci test in the test script is broken currently. Things To Do: - Translate the scheduler with CakeML tools - Fix the fibonacci test script - Edit the Holmakefile such that it can be more general for CakeML directory location - Add test scripts for scheduler - Prove correctness of scheduler evaluation
-
- 08 Dec, 2016 3 commits
-
-
Alexander Soen authored
Now will find steps to execute on a program without excessive re-evaluation.
-
Adam Nelson authored
-
Adam Nelson authored
The symbolic value monad was too general, making it impossible to prove anything useful about it. For example, a symbolic value could become unresolvable in response to a new resolved value being added to the context, making recursive resolution loop forever. In order to prove that resolution terminates, symbolic was changed to an applicative. The new symbolic type keeps a list of all locations that it depends on, including a special case for "the last value of this memory location before this action". This commit only contains changes to uvmMemoryTheory and its dependencies. uvmThreadSemantics and uvmScheduler are not done yet, and do not compile.
-
- 07 Dec, 2016 1 commit
-
-
Alexander Soen authored
Have a function which will evaluate a program by generating a schedule for it to use. Currently generating the schedule is very slow. Things to do: - optimize the schedule function
-
- 06 Dec, 2016 3 commits
-
-
Alexander Soen authored
-
Alexander Soen authored
"Cheating" issue resolved
-
Michael Norrish authored
-
- 05 Dec, 2016 1 commit
-
-
Alexander Soen authored
Still states "cheated" on Holmake.
-
- 04 Dec, 2016 1 commit
-
-
Alexander Soen authored
Made relevent changes in test script
-
- 02 Dec, 2016 2 commits
-
-
Alexander Soen authored
Fibonacci test was added to the test file. General debugging while testing. Things to do: - Possible "Free" and "Halt/Fin" constructors for the expression language - Factorial Test
-
Alexander Soen authored
Mirrored the stylistic changes made in previous commits. The new structure of evaluation is: eval_scheduler - eval_step - eval_xpr_step - eval_bool_step where eval_xpr_step and eval_bool_step are side effect free. Things to do: - Create test cases for correctness - Factorial Function
-