Commit Graph

1278 Commits

Author SHA1 Message Date
Neil Brown
d9b606143e Fixed a Haddock comment 2007-12-14 15:27:51 +00:00
Neil Brown
3814a039d5 Refactored the use of mygcd with foldl into one function 2007-12-14 15:17:19 +00:00
Neil Brown
1dabdfef9d Added some tests for the Omega Test that are not "easily" solved 2007-12-14 12:25:29 +00:00
Neil Brown
97c670b2ff Fixed and documented the checkOpposite function so that it works properly and the tests pass 2007-12-14 04:13:01 +00:00
Neil Brown
3380596ef0 Added more tests for the usage checker, and a helper function for testing parallel items 2007-12-14 04:12:29 +00:00
Neil Brown
2050124658 Added tests for solving equalities and inequalities, and an easy way of writing those tests using user-defined operators 2007-12-14 02:41:15 +00:00
Neil Brown
57311d8d1e Added consistency checking for constant-only inequalities and also added a few more useful functions 2007-12-14 01:11:29 +00:00
Neil Brown
22b09ad95c Changed the tests to also test pruning inconsistent equations 2007-12-14 00:41:06 +00:00
Neil Brown
c7fe0f1515 Added equation pruning and tested most of it using QuickCheck 2007-12-14 00:02:15 +00:00
Neil Brown
140bd94ce3 Added various (QuickCheck) Result helper functions to the TestUtils module 2007-12-13 23:51:49 +00:00
Neil Brown
8d89a88735 Added a couple more functions to the Utils module 2007-12-13 23:51:11 +00:00
Neil Brown
26dd2fa5c4 Renamed the TestUtil and TreeUtil modules to TestUtils and TreeUtils, to be consistent with the Utils module 2007-12-13 19:05:29 +00:00
Neil Brown
51d5d50d45 Added the ability to adjust the level of QuickCheck testing from the command-line 2007-12-13 18:51:25 +00:00
Neil Brown
337f189b8a Separated the QuickCheck tests from the HUnit tests and made the number of test-cases configurable for the QuickCheck tests 2007-12-13 18:21:53 +00:00
Neil Brown
54721cd19b Added some QuickCheck helper functions and types to TestUtil 2007-12-13 18:19:02 +00:00
Neil Brown
cbeb3ecd95 Added a QuickCheck test for the equality-solving part of the Omega test 2007-12-13 15:33:14 +00:00
Neil Brown
b1a8f1d30d Made the arrayise function act on one list at a time, and made it visible for other functions 2007-12-13 15:32:46 +00:00
Neil Brown
e56d02b727 Made the mygcd function visible so that I can use it in building tests 2007-12-13 15:32:04 +00:00
Neil Brown
9082e5c887 Added lots of comments to the solveConstraints function and made a few trivial tweaks 2007-12-12 18:04:46 +00:00
Neil Brown
8d2751439b Added another call to normaliseEq inside solveNext 2007-12-12 18:03:18 +00:00
Neil Brown
4e58d48d1c Renamed normalise to normaliseEq and stopped it being applied to inequalities (as it will fail needlessly on those!) 2007-12-12 18:02:19 +00:00
Neil Brown
4eae0ede18 Removed the changeAllButOneDifferent function and replaced it with simpler code 2007-12-12 17:48:30 +00:00
Neil Brown
88f7d1ec92 Refactored the equation normalisation and added a custom GCD function 2007-12-12 17:40:37 +00:00
Neil Brown
94dca6fc10 Fixed a bug in the solveUnits function where everything was always being negated, when it should be dependent on whether the unit coefficient was 1 or -1 2007-12-12 17:24:50 +00:00
Neil Brown
76dc1c3b53 Added another test for the Omega Test 2007-12-12 17:21:25 +00:00
Neil Brown
bea8606bdc Added more tests for the Omega Test equality solver, including one that highlights a current bug 2007-12-12 15:07:39 +00:00
Neil Brown
a5e277505f Rewrote the substIn function in solveConstraints to be clearer and simpler 2007-12-12 15:07:01 +00:00
Neil Brown
1aa914e077 Tidied up the checkForUnit function in solveConstraints 2007-12-12 14:25:24 +00:00
Neil Brown
52054dff9f Simplified the type of solve in solveConstraints (it doesn't actually need to return a value) and added a comment 2007-12-12 14:20:17 +00:00
Neil Brown
cba5ff45f1 Fixed a small bug in the equation normalisation 2007-12-12 14:16:29 +00:00
Neil Brown
2354c6a933 Simplified some monadic code in solveConstraints 2007-12-12 14:08:09 +00:00
Neil Brown
83ee41c75c Transformed uses of the StIneq type into their long version so that I can remove StIneq (was only used in a few places anyway) 2007-12-12 14:03:07 +00:00
Neil Brown
961e1837de Removed a couple of unused lines from the Omega Test 2007-12-12 13:58:52 +00:00
Neil Brown
c46580fbda Changed the monad in the Omega Test equality stuff to StateT Maybe rather than State, and fixed some bugs in the Omega Test 2007-12-12 13:57:44 +00:00
Neil Brown
e34ebc67ea Fixed a warning about the type of 0.5 defaulting to Double 2007-12-12 13:56:33 +00:00
Neil Brown
4a83bd8b41 Added another test, from the Omega Test paper 2007-12-12 13:54:04 +00:00
Neil Brown
b39fa8053b Added two more monadic helper functions to the Utils module 2007-12-12 13:50:55 +00:00
Neil Brown
6598ebd3c8 Added a helper function for the Omega Test tests, and added a further test 2007-12-11 17:21:30 +00:00
Neil Brown
ed43b750c1 Added an initial messy implementation of the equality part of the Omega test 2007-12-11 16:54:36 +00:00
Neil Brown
a196b53e9e Added more helper functions (mostly Array-related) to the Utils module 2007-12-11 16:49:50 +00:00
Neil Brown
905e110e86 Added a function to FlowGraph for joining two sets of graph labelling functions together 2007-12-10 15:45:06 +00:00
Neil Brown
4c20f99ac3 Changed some tests to use the new mSeq matching helpers 2007-11-28 14:30:56 +00:00
Neil Brown
5ab259074a Added the GenTagAST utility that generates the TagAST module full of mSeq functions for easy pattern-matching 2007-11-21 19:09:27 +00:00
Neil Brown
ae1977a099 Added the EXEEXT suffix in the Makefile.am rules for GHC, since I don't think it will do so automatically 2007-11-21 19:08:25 +00:00
Neil Brown
8ec8374bc6 Converted most of ParseRainTest to use the pat function with normal AST fragments, rather than the more verbose explicit Patterns 2007-11-21 15:33:17 +00:00
Neil Brown
14cb5d7642 Changed some Named Patterns to use the new @@ operator 2007-11-21 14:26:08 +00:00
Neil Brown
7ea3d2a7f9 Added an @@ operator for Named patterns, like in the Tock presentation 2007-11-21 14:25:32 +00:00
Neil Brown
d3c246a911 Fixed an autoconf warning due to using an obsolete form of the AC_OUTPUT macro 2007-11-21 12:41:11 +00:00
Neil Brown
58a32e7d43 Fixed the re-added Haddock Makefile entry to stop it using GNU Make macros 2007-11-21 12:40:40 +00:00
Neil Brown
3632de6cb0 Fixed an autoconf warning about not using EXEEXT for our executable files 2007-11-21 12:39:57 +00:00