cvc5.git
13 years agosome printing and parser fixes for problems recently uncovered
Morgan Deters [Fri, 21 Oct 2011 04:44:14 +0000 (04:44 +0000)]
some printing and parser fixes for problems recently uncovered

13 years agoadd gcc version information to Configuration, and warn when building with v4.5.1...
Morgan Deters [Fri, 21 Oct 2011 04:25:19 +0000 (04:25 +0000)]
add gcc version information to Configuration, and warn when building with v4.5.1 which has a buggy optimizer (resolves bug #266)

13 years agoadd support for QF_AUFLIA and QF_AUFLIRA logic strings in SMT inputs, for testing
Morgan Deters [Thu, 20 Oct 2011 17:40:26 +0000 (17:40 +0000)]
add support for QF_AUFLIA and QF_AUFLIRA logic strings in SMT inputs, for testing

13 years agofix configure step on Ubuntu oneiric (11.10)-- related to bug #284
Morgan Deters [Wed, 19 Oct 2011 23:36:21 +0000 (23:36 +0000)]
fix configure step on Ubuntu oneiric (11.10)-- related to bug #284

13 years agofix bug #264: competition / other static library builds when readline isn't available
Morgan Deters [Wed, 19 Oct 2011 21:35:50 +0000 (21:35 +0000)]
fix bug #264: competition / other static library builds when readline isn't available

13 years agoAdding support for QF_UFLIA to the smt2 parser.
Tim King [Wed, 19 Oct 2011 18:50:41 +0000 (18:50 +0000)]
Adding support for QF_UFLIA to the smt2 parser.

13 years agoMerging the branch branches/arithmetic/push-pop-support from r2247 to r2256 into...
Tim King [Wed, 19 Oct 2011 17:25:00 +0000 (17:25 +0000)]
Merging the branch branches/arithmetic/push-pop-support from r2247 to r2256 into trunk.  Arithmetic should now be closer to being able to support push and pop.

13 years agoSharing work
Dejan Jovanović [Mon, 17 Oct 2011 03:12:17 +0000 (03:12 +0000)]
Sharing work

13 years agofix make dist
Morgan Deters [Thu, 13 Oct 2011 15:27:27 +0000 (15:27 +0000)]
fix make dist

13 years agoInterruption, time-out, and deterministic time-out ("resource-out") features.
Morgan Deters [Thu, 13 Oct 2011 04:14:38 +0000 (04:14 +0000)]
Interruption, time-out, and deterministic time-out ("resource-out") features.
Details here: http://goedel.cims.nyu.edu/wiki/Meeting_Minutes_-_October_14,_2011#Resource.2Ftime_limiting_API
This will need more work, but it's a start.

Also implemented TheoryEngine::properPropagation().

Other minor things.

13 years agoSome new Datatype public functionality, as per Chris Conway's suggestions on the...
Morgan Deters [Fri, 7 Oct 2011 14:57:38 +0000 (14:57 +0000)]
Some new Datatype public functionality, as per Chris Conway's suggestions on the dev mailing list.

13 years agodon't build language bindings unless expressly requested with --enable-language-bindings
Morgan Deters [Thu, 6 Oct 2011 00:09:25 +0000 (00:09 +0000)]
don't build language bindings unless expressly requested with --enable-language-bindings

13 years agoReverting a fix from earlier today that fixed a Mac OS warning but completely broke...
Morgan Deters [Wed, 5 Oct 2011 23:58:57 +0000 (23:58 +0000)]
Reverting a fix from earlier today that fixed a Mac OS warning but completely broke Linux. :-(

13 years agoensureLiteral() in CNF stream to support Andy's quantifiers work; an update to model...
Morgan Deters [Wed, 5 Oct 2011 23:51:57 +0000 (23:51 +0000)]
ensureLiteral() in CNF stream to support Andy's quantifiers work; an update to model gen on booleans; and a little cleanup

13 years agominor visibility fixes
Morgan Deters [Wed, 5 Oct 2011 19:03:23 +0000 (19:03 +0000)]
minor visibility fixes

13 years agoremove some debugging code that slowed down last night's regressions
Morgan Deters [Wed, 5 Oct 2011 17:52:06 +0000 (17:52 +0000)]
remove some debugging code that slowed down last night's regressions

13 years agoDisabling the variable removal hueristic by default.
Tim King [Tue, 4 Oct 2011 22:21:55 +0000 (22:21 +0000)]
Disabling the variable removal hueristic by default.

13 years agoalso add test case
Morgan Deters [Tue, 4 Oct 2011 16:16:02 +0000 (16:16 +0000)]
also add test case

13 years agofixes to context-dependent caching substitutions
Morgan Deters [Tue, 4 Oct 2011 16:15:47 +0000 (16:15 +0000)]
fixes to context-dependent caching substitutions

13 years agoadd a guard for history saving, to enable building without GNU history library
Morgan Deters [Tue, 4 Oct 2011 15:48:03 +0000 (15:48 +0000)]
add a guard for history saving, to enable building without GNU history library

13 years agocompatibility, bindings
Morgan Deters [Tue, 4 Oct 2011 14:40:01 +0000 (14:40 +0000)]
compatibility, bindings

13 years agocvc3 compatibility layer; and another libantlr3c v3.4 incompatibility fix
Morgan Deters [Tue, 4 Oct 2011 14:36:57 +0000 (14:36 +0000)]
cvc3 compatibility layer; and another libantlr3c v3.4 incompatibility fix

13 years agocompat layer cleanup
Morgan Deters [Tue, 4 Oct 2011 06:25:36 +0000 (06:25 +0000)]
compat layer cleanup

13 years agooops, one more fix, hopefully the last
Morgan Deters [Tue, 4 Oct 2011 01:54:38 +0000 (01:54 +0000)]
oops, one more fix, hopefully the last

13 years agoYet Another Antlr3 Mod---this time, all my fault: for configuration auto-detection...
Morgan Deters [Tue, 4 Oct 2011 01:42:45 +0000 (01:42 +0000)]
Yet Another Antlr3 Mod---this time, all my fault: for configuration auto-detection of libantlr3c, I chose an innocent-looking function that was present in both versions.  But it's signature had changed, breaking source compatibility in both directions.  Just like the other function that started the whole mess.  Silly me.

13 years agoOh, here's another cute compatibility fix for libantlr3c 3.4-beta4. They #define...
Morgan Deters [Tue, 4 Oct 2011 01:25:35 +0000 (01:25 +0000)]
Oh, here's another cute compatibility fix for libantlr3c 3.4-beta4.  They #define true and false to their own ANTLR3_TRUE and ANTLR3_FALSE, wreaking havoc on our parsers.  I'm really fed up with this package.

13 years agomimicking Chris's recent contribution to QueryResult in CVC3 in the compatibility...
Morgan Deters [Tue, 4 Oct 2011 01:06:41 +0000 (01:06 +0000)]
mimicking Chris's recent contribution to QueryResult in CVC3 in the compatibility layer

13 years agomore fixes for libantlr3c v3.4
Morgan Deters [Tue, 4 Oct 2011 00:59:29 +0000 (00:59 +0000)]
more fixes for libantlr3c v3.4

13 years agosupport for configure-discovery of antlr3-3.4-beta4
Morgan Deters [Tue, 4 Oct 2011 00:26:35 +0000 (00:26 +0000)]
support for configure-discovery of antlr3-3.4-beta4

13 years agouser push/pop support in minisat and simplification; also bindings work
Morgan Deters [Mon, 3 Oct 2011 22:07:38 +0000 (22:07 +0000)]
user push/pop support in minisat and simplification; also bindings work

13 years agoImporting Chris's recent changes to CVC3's ValidityChecker into the compatibility...
Morgan Deters [Mon, 3 Oct 2011 18:24:57 +0000 (18:24 +0000)]
Importing Chris's recent changes to CVC3's ValidityChecker into the compatibility layer

13 years agofix to CNF undoTranslate(), to support incrementality
Morgan Deters [Fri, 30 Sep 2011 23:35:31 +0000 (23:35 +0000)]
fix to CNF undoTranslate(), to support incrementality

13 years agoforgot to put some things in the distro
Morgan Deters [Fri, 30 Sep 2011 23:20:23 +0000 (23:20 +0000)]
forgot to put some things in the distro

13 years agointerfaces fixes and cleanups...and examples of each interface!
Morgan Deters [Fri, 30 Sep 2011 23:01:58 +0000 (23:01 +0000)]
interfaces fixes and cleanups...and examples of each interface!

13 years agomore push/pop infrastructure, some SAT stuff
Morgan Deters [Fri, 30 Sep 2011 03:33:56 +0000 (03:33 +0000)]
more push/pop infrastructure, some SAT stuff

13 years agofixes to incremental simplification, cnf routines, other stuff in preparation of...
Morgan Deters [Fri, 30 Sep 2011 02:29:00 +0000 (02:29 +0000)]
fixes to incremental simplification, cnf routines, other stuff in preparation of user push/pop in SAT solver

13 years agocompatibility work, documentation
Morgan Deters [Thu, 29 Sep 2011 18:38:00 +0000 (18:38 +0000)]
compatibility work, documentation

13 years agobuild system fixes
Morgan Deters [Thu, 29 Sep 2011 06:40:27 +0000 (06:40 +0000)]
build system fixes

13 years agoSome base infrastructure for user push/pop; a few bugfixes to user push/pop and model...
Morgan Deters [Thu, 29 Sep 2011 05:15:30 +0000 (05:15 +0000)]
Some base infrastructure for user push/pop; a few bugfixes to user push/pop and model gen also.
I also expect this commit to fix bug #273.

No performance change is expected on regressions with this commit, see
http://goedel.cims.nyu.edu/regress-results/compare_jobs.php?job_id=2871&reference_id=2863

13 years agosome test fixes
Morgan Deters [Thu, 29 Sep 2011 02:24:28 +0000 (02:24 +0000)]
some test fixes

13 years agoanother make dist fix for java compat bindings
Morgan Deters [Wed, 28 Sep 2011 23:57:12 +0000 (23:57 +0000)]
another make dist fix for java compat bindings

13 years agovariety of visibility fixes (should clean up some of the many warnings on MacOS-produ...
Morgan Deters [Wed, 28 Sep 2011 23:53:57 +0000 (23:53 +0000)]
variety of visibility fixes (should clean up some of the many warnings on MacOS-production-dynamic builds)

13 years agoCVC4::Integer was not marked CVC4_PUBLIC, causing dynamic link errors on MacOS in...
Morgan Deters [Wed, 28 Sep 2011 22:38:31 +0000 (22:38 +0000)]
CVC4::Integer was not marked CVC4_PUBLIC, causing dynamic link errors on MacOS in production builds.  Fixed.

13 years agofixes for make dist ; make install
Morgan Deters [Wed, 28 Sep 2011 22:32:05 +0000 (22:32 +0000)]
fixes for make dist ; make install

13 years agobetter fix for #281, also fix issue with command line options not existing on older...
Morgan Deters [Wed, 28 Sep 2011 19:46:53 +0000 (19:46 +0000)]
better fix for #281, also fix issue with command line options not existing on older g++en, like Apple's 4.2 on Snow Leopard.

13 years agoRegular expressions in shell scripts on MacOS are inconsistent... again. :-( Fixing...
Morgan Deters [Wed, 28 Sep 2011 18:46:29 +0000 (18:46 +0000)]
Regular expressions in shell scripts on MacOS are inconsistent... again. :-(  Fixing a problem with Debug_tags and Trace_tags, closes bug #281

13 years agoremoved "typename" keyword (fix to bug 280)
Morgan Deters [Wed, 28 Sep 2011 00:45:46 +0000 (00:45 +0000)]
removed "typename" keyword (fix to bug 280)

13 years agomore interface work; adding legacy C interface
Morgan Deters [Tue, 27 Sep 2011 00:34:30 +0000 (00:34 +0000)]
more interface work; adding legacy C interface

13 years agofirst crack at compatibility java interface (not built by default)
Morgan Deters [Sun, 25 Sep 2011 08:18:45 +0000 (08:18 +0000)]
first crack at compatibility java interface (not built by default)

13 years agoFix to building and linking for unit tests. (This should fix the segfaulting units...
Morgan Deters [Sat, 24 Sep 2011 18:04:08 +0000 (18:04 +0000)]
Fix to building and linking for unit tests.  (This should fix the segfaulting units in optimized-dynamic.  The problem was that the code incorrectly determined the address of one of the thread-scoped global variables, and I think it's because the same library was linked twice into the unit test in two different ways, confusing the runtime support code.)

13 years agointerface cleanup, java bindings work
Morgan Deters [Fri, 23 Sep 2011 23:37:42 +0000 (23:37 +0000)]
interface cleanup, java bindings work

13 years agoJava binding now working. Some interface types still need some work (e.g. iterators...
Morgan Deters [Wed, 21 Sep 2011 05:02:58 +0000 (05:02 +0000)]
Java binding now working.  Some interface types still need some work (e.g. iterators aren't functional).  Also, output isn't very flexible yet, as I told SWIG to ignore all the operator<<'s.

13 years agoconsiderable bindings interface work, some improvements to build
Morgan Deters [Wed, 21 Sep 2011 03:26:13 +0000 (03:26 +0000)]
considerable bindings interface work, some improvements to build

13 years agofix build
Morgan Deters [Tue, 20 Sep 2011 17:45:00 +0000 (17:45 +0000)]
fix build

13 years agoMerge from "swig" branch: language binding for Java is compiling and linking. Enable...
Morgan Deters [Tue, 20 Sep 2011 14:58:30 +0000 (14:58 +0000)]
Merge from "swig" branch: language binding for Java is compiling and linking.  Enable with --enable-language-bindings=java

13 years agocleaned up the mechanism for library versioning
Morgan Deters [Sun, 18 Sep 2011 21:13:34 +0000 (21:13 +0000)]
cleaned up the mechanism for library versioning

13 years ago--show-debug-tags and --show-trace-tags now supported by Configuration API; also...
Morgan Deters [Sat, 17 Sep 2011 01:57:27 +0000 (01:57 +0000)]
--show-debug-tags and --show-trace-tags now supported by Configuration API; also, the information is only recompiled and relinked when it has changed, avoiding unnecessary relinking

13 years agodump define-funs correctly with "--dump declarations", whether the function is define...
Morgan Deters [Fri, 16 Sep 2011 21:54:21 +0000 (21:54 +0000)]
dump define-funs correctly with "--dump declarations", whether the function is defined via API or through input language

13 years agoinclude example theory (former "UF-Tim") that's included in the dist but not built...
Morgan Deters [Fri, 16 Sep 2011 21:52:25 +0000 (21:52 +0000)]
include example theory (former "UF-Tim") that's included in the dist but not built for the library

13 years agofinal(?) documentation fixes
Morgan Deters [Fri, 16 Sep 2011 21:36:07 +0000 (21:36 +0000)]
final(?) documentation fixes

13 years agofix up more documentation
Morgan Deters [Fri, 16 Sep 2011 21:32:37 +0000 (21:32 +0000)]
fix up more documentation

13 years agosome minor fixes to the cvc3 compatibility library and test case
Morgan Deters [Fri, 16 Sep 2011 21:30:27 +0000 (21:30 +0000)]
some minor fixes to the cvc3 compatibility library and test case

13 years agonew, improved doxygen config file
Morgan Deters [Fri, 16 Sep 2011 20:53:36 +0000 (20:53 +0000)]
new, improved doxygen config file

13 years agofix serious issue with copyright-updating script
Morgan Deters [Fri, 16 Sep 2011 20:53:19 +0000 (20:53 +0000)]
fix serious issue with copyright-updating script

13 years agofix numerous documentation issues; doxygen complains much less, now
Morgan Deters [Fri, 16 Sep 2011 20:53:00 +0000 (20:53 +0000)]
fix numerous documentation issues; doxygen complains much less, now

13 years agofix an oversight in the language printers
Morgan Deters [Fri, 16 Sep 2011 20:49:58 +0000 (20:49 +0000)]
fix an oversight in the language printers

13 years agofix debian build without breaking anything (i hope)
Morgan Deters [Fri, 16 Sep 2011 20:19:25 +0000 (20:19 +0000)]
fix debian build without breaking anything (i hope)

13 years agotim's fixes for context-dependent pre-registration
Dejan Jovanović [Thu, 15 Sep 2011 21:48:42 +0000 (21:48 +0000)]
tim's fixes for context-dependent pre-registration

13 years agoadding --show-debug-tags to list all available debug tracing tags
Dejan Jovanović [Thu, 15 Sep 2011 18:17:11 +0000 (18:17 +0000)]
adding --show-debug-tags to list all available debug tracing tags

13 years agoadditional stuff for sharing,
Dejan Jovanović [Thu, 15 Sep 2011 06:53:33 +0000 (06:53 +0000)]
additional stuff for sharing,

13 years agofixes for uf/equality engine from the quantifiers branch. mainly backtracking issues.
Dejan Jovanović [Wed, 7 Sep 2011 16:25:15 +0000 (16:25 +0000)]
fixes for uf/equality engine from the quantifiers branch. mainly backtracking issues.

13 years agothis should fix the build; doxygen documentation now gets built in srcdir/doc/doxygen
Morgan Deters [Sat, 3 Sep 2011 18:31:24 +0000 (18:31 +0000)]
this should fix the build; doxygen documentation now gets built in srcdir/doc/doxygen

13 years agoDisable a warning to address bug 277. (This doesn't really resolve the issue, but...
Morgan Deters [Sat, 3 Sep 2011 18:13:04 +0000 (18:13 +0000)]
Disable a warning to address bug 277.  (This doesn't really resolve the issue, but the warning isn't dangerous here.  See the bugzilla comments.)

13 years agoremoving an assert i forgot to remove that andy found
Dejan Jovanović [Sat, 3 Sep 2011 00:42:34 +0000 (00:42 +0000)]
removing an assert i forgot to remove that andy found

13 years agoMerge from my post-smtcomp branch. Includes:
Morgan Deters [Fri, 2 Sep 2011 20:41:08 +0000 (20:41 +0000)]
Merge from my post-smtcomp branch.  Includes:

Dumping infrastructure.  Can dump preprocessed queries and clauses.  Can
also dump queries (for testing with another solver) to see if any conflicts
are missed, T-propagations are missed, all lemmas are T-valid, etc.  For a
full list of options see --dump=help.

CUDD building much cleaner.

Documentation and assertion fixes.

Printer improvements, printing of commands in language-defined way, etc.

Typechecker stuff in expr package now autogenerated, no need to manually
edit the expr package when adding a new theory.

CVC3 compatibility layer (builds as libcompat).

SWIG detection and language binding support (infrastructure).

Support for some Z3 extended commands (like datatypes) in SMT-LIBv2 mode
(when not in compliance mode).

Copyright and file headers regenerated.

13 years agoEnsure that assignment gestures through CDMap iterators like:
Morgan Deters [Fri, 2 Sep 2011 19:23:18 +0000 (19:23 +0000)]
Ensure that assignment gestures through CDMap iterators like:

  (*myCDMap.find(foo)).second = bar;

fail with a compile-time error (rather than being silently ignored, like
they had been).

Resolves bug #276.

13 years agoPartial merge of integers work; this is simple B&B and some pseudoboolean
Morgan Deters [Fri, 2 Sep 2011 17:56:43 +0000 (17:56 +0000)]
Partial merge of integers work; this is simple B&B and some pseudoboolean
infrastructure, and takes care not to affect CVC4's performance on LRA
benchmarks.

13 years ago* Changing pre-registration to be context dependent -- it is called from the SAT...
Dejan Jovanović [Fri, 2 Sep 2011 12:39:23 +0000 (12:39 +0000)]
* Changing pre-registration to be context dependent -- it is called from the SAT solver on every backtrack
* Updated UF to handle the context dependent pre-registration
* Additionally some small changes in order to satisfy warnings of the eclipse code analysis tool

13 years agoFixin the SAT solver for Andy. Even if a SAT lemma is added, a FULL-CHECK will be...
Dejan Jovanović [Tue, 30 Aug 2011 02:19:58 +0000 (02:19 +0000)]
Fixin the SAT solver for Andy. Even if a SAT lemma is added, a FULL-CHECK will be reissued. Some unexpected slowdowns, but not too much.

13 years agoRemoving Theory::registerTerm() as discussed in the meeting. Now pre-register is...
Dejan Jovanović [Sat, 27 Aug 2011 00:33:22 +0000 (00:33 +0000)]
Removing Theory::registerTerm() as discussed in the meeting. Now pre-register is called on all the theory terms and the foreign-terms also. This means, if x: REAL and f:REAL, that in f(x) >= 0, arithmetic gets pre-register call with x, f(x) and f(x) >= 0, while UF gets pre-register call with x, f(x).

13 years agoFixing the broken unit tests
Dejan Jovanović [Thu, 25 Aug 2011 18:36:46 +0000 (18:36 +0000)]
Fixing the broken unit tests

13 years agoSimplification of the preregister and register throught a NodeVisitor class. The...
Dejan Jovanović [Wed, 24 Aug 2011 21:03:19 +0000 (21:03 +0000)]
Simplification of the preregister and register throught a NodeVisitor class. The theoryOf is not all in one place, theory::theoryOf. The uninterpreted sorts belong to the builtin theory and are dispatched to the apropriate theory (QF_UF, QF_AX) through theoryOf based on the setting in the Theory class.

13 years agosome uf cleanup
Dejan Jovanović [Tue, 23 Aug 2011 23:43:01 +0000 (23:43 +0000)]
some uf cleanup

13 years agonew implementation of lemmas on demand
Dejan Jovanović [Wed, 17 Aug 2011 15:20:19 +0000 (15:20 +0000)]
new implementation of lemmas on demand
comparison <http://goedel.cims.nyu.edu/regress-results/compare_jobs.php?job_id=2673&&p=5&reference_id=2637>

13 years agoforgot to reflect naming change in makefile. fixed
Morgan Deters [Tue, 12 Jul 2011 22:46:57 +0000 (22:46 +0000)]
forgot to reflect naming change in makefile.  fixed

13 years agofix bug 272, array unsoundness, and some array cleanup
Morgan Deters [Tue, 12 Jul 2011 22:42:15 +0000 (22:42 +0000)]
fix bug 272, array unsoundness, and some array cleanup

13 years agoremove some array regressions from "make check" so nightly regressions run
Morgan Deters [Mon, 11 Jul 2011 23:14:25 +0000 (23:14 +0000)]
remove some array regressions from "make check" so nightly regressions run

13 years agostatus of examples
Morgan Deters [Mon, 11 Jul 2011 20:42:39 +0000 (20:42 +0000)]
status of examples

13 years agonew array bugs ?
Morgan Deters [Mon, 11 Jul 2011 20:41:28 +0000 (20:41 +0000)]
new array bugs ?

13 years agofixing out of place typename (error on g++ 4.4.3-4ubuntu5)
Morgan Deters [Mon, 11 Jul 2011 20:06:20 +0000 (20:06 +0000)]
fixing out of place typename (error on g++ 4.4.3-4ubuntu5)

13 years agosubmission script
Morgan Deters [Mon, 11 Jul 2011 20:00:47 +0000 (20:00 +0000)]
submission script

13 years agoAdding static_fact_manager
Clark Barrett [Mon, 11 Jul 2011 20:00:29 +0000 (20:00 +0000)]
Adding static_fact_manager

13 years agoClark's work on array theory - can now solve all QF_AX problems
Clark Barrett [Mon, 11 Jul 2011 19:53:44 +0000 (19:53 +0000)]
Clark's work on array theory - can now solve all QF_AX problems

13 years agofix some confusing debug output (bogus counter)
Morgan Deters [Mon, 11 Jul 2011 19:34:01 +0000 (19:34 +0000)]
fix some confusing debug output (bogus counter)

13 years agomark the new minimized benchmark as unsat
Morgan Deters [Mon, 11 Jul 2011 18:50:44 +0000 (18:50 +0000)]
mark the new minimized benchmark as unsat

13 years agoif running in QF_AX, equalities over terms of uninterpreted sort go to arrays, as...
Morgan Deters [Mon, 11 Jul 2011 18:48:16 +0000 (18:48 +0000)]
if running in QF_AX, equalities over terms of uninterpreted sort go to arrays, as well as pre-registration of free constants of uninterpreted sort, etc..

13 years agominimized example
Morgan Deters [Mon, 11 Jul 2011 16:53:50 +0000 (16:53 +0000)]
minimized example

13 years agoarray benchmarks
Morgan Deters [Mon, 11 Jul 2011 16:38:38 +0000 (16:38 +0000)]
array benchmarks

13 years agoadding disequality propagation
Dejan Jovanović [Mon, 11 Jul 2011 12:45:16 +0000 (12:45 +0000)]
adding disequality propagation

relevant comparison http://goedel.cims.nyu.edu/regress-results/compare_jobs.php?job_id=2602&reference_id=2590&p=5

13 years agomerge from symmetry branch
Morgan Deters [Mon, 11 Jul 2011 03:33:14 +0000 (03:33 +0000)]
merge from symmetry branch