Commit Graph

827 Commits (45c155fdf16ed43627eaab9c9d5003ac5c15dc80)

Author SHA1 Message Date
Josh Berdine 21f3287e42 [sledge] Do not expose the internal Trm interface 4 years ago
Josh Berdine 194127eb4b [sledge] Move additional Fol representation operations to Trm and Fml 4 years ago
Josh Berdine dd19e11949 [sledge] Rename Fol core types to follow convention 4 years ago
Josh Berdine 1643bf1c50 [sledge] Factor core Fol modules into separate modules 4 years ago
Josh Berdine 90675ca33a [sledge] Improve Monad interface 4 years ago
Josh Berdine 50e4fc3e8c [sledge] Replace fold_vars with an iterator in Fol 4 years ago
Josh Berdine 4bca4f238e [sledge] Add Fol normalization of sequence terms 4 years ago
Josh Berdine 6b2f0a4a1e [sledge] Strengthen normalization of arithmetic equalities 4 years ago
Josh Berdine 04a9a06870 [sledge] Omit true from conjunction and false from disjunction 4 years ago
Josh Berdine 4a59f053fa [sledge] Improve printing 4 years ago
Josh Berdine 3b4c7ab41f [sledge] Move normalization of literals out of Propositional 4 years ago
Josh Berdine 2083e3ee86 [sledge] Minor simplifications using Set and Map iterators 4 years ago
Josh Berdine 920c553902 [sledge] Change type of fold functions for improved composition 4 years ago
Josh Berdine ec4cb61db3 [sledge] Shift to a more standard Set API 4 years ago
Josh Berdine 46abb011cb [sledge] Do not reverse Map.to_iter 4 years ago
Josh Berdine 4780b92584 [sledge] Shift to a more standard Map API 4 years ago
Josh Berdine 917e57a5cf [sledge] Simplify equal_or_opposite to eval_iff 4 years ago
Josh Berdine f29f5cfb6b [sledge] Factor Fol.Fml out into a separate module 4 years ago
Josh Berdine e8b94baae2 [sledge] Normalize And and Or formulas wrt ACUZ 4 years ago
Josh Berdine 5574c5e078 [sledge] Replace uses of Base.With_return with Iterators 4 years ago
Josh Berdine 1697382344 [sledge] Switch IArray from Core_kernel.Array to NS.Array 4 years ago
Josh Berdine 9959fbb478 [sledge] Switch from Base.Array to Containers.Array 4 years ago
Josh Berdine e5bcaa34cb [sledge] Add Term.split_const and use instead of const_of 4 years ago
Josh Berdine 429ddee9f5 [sledge] Add test for chunking segments when printing Sh 4 years ago
Josh Berdine c35c4e2789 [sledge] Switch from Base.List to Containers.List 4 years ago
Josh Berdine 409b21ec64 [sledge] Switch from Base.Option to Containers.Option 4 years ago
Josh Berdine 3f4f0cc4ac [sledge] Switch from Base.String to Containers.String 4 years ago
Josh Berdine 94bf571950 [sledge] Rename Fheap to FHeap for consistency 4 years ago
Josh Berdine ad25b2be4e [sledge] Rename Hash_queue to HashQueue for consistency 4 years ago
Josh Berdine 9a238a76da [sledge] Switch from Base.Hashtbl to Containers.Hashtbl 4 years ago
Josh Berdine 08da86ae62 [sledge] Switch from Base.Hash_set to CCHashSet 4 years ago
Josh Berdine b6a77f6567 [sledge] Refactor nonstdlib to avoid opening Core 4 years ago
Josh Berdine 73be4779ab [sledge] Minor simplification of outputting Report 4 years ago
Josh Berdine e2f0aab454 [sledge] Do not expose Report dependency on Unix.process_times 4 years ago
Josh Berdine 78a3dee2d9 [sledge] Rename gt0 to pos and remove le0, ge0, lt0 4 years ago
Josh Berdine 5fac93bd44 [sledge] Simplify is_negative based on NNF, add positive condition invariant 4 years ago
Josh Berdine 93ed599153 [sledge] Add formula invariant to check NNF 4 years ago
Josh Berdine 6427b99a16 [sledge] Remove exclusive-or formula 4 years ago
Josh Berdine d22d1ebd62 [sledge] Remove negative uninterpreted literal formula 4 years ago
Josh Berdine 2ac6b7be75 [sledge] Remove non-positive formula 4 years ago
Josh Berdine 5ea779671a [sledge] Remove non-zero formula 4 years ago
Josh Berdine 5acd64c22e [sledge] Remove disequality formula 4 years ago
Josh Berdine 157e990d36 [sledge] Remove false formula 4 years ago
Josh Berdine 474bd68fca [sledge] Add negation formula 4 years ago
Josh Berdine 7b82ab17bf [sledge] Remove redundant Ge0 and Lt0 predicates 4 years ago
Josh Berdine 5b4be9cab8 [sledge] Add Term.invariant and justified minor code simplifications 4 years ago
Josh Berdine 3258761ac3 [sledge] Represent arithmetic terms using polynomials 4 years ago
Josh Berdine 1dca0cb375 [sledge] Evaluate function symbols applied to constants 4 years ago
Josh Berdine df35f9702a [sledge] Generalize Multiset over type of multiplicities 4 years ago
Josh Berdine bd49ad84a8 [sledge] Rename Qset to Multiset 4 years ago
Josh Berdine 682fb9158c [sledge] Switch from Base.Map to Containers.Map 4 years ago
Josh Berdine 577ef67a68 [sledge] Fix doc in Ses.Term 4 years ago
Josh Berdine dca725b33d [sledge] Parameterize Var.strength over type of variables 4 years ago
Josh Berdine 8a7962c784 [sledge] Improve doc in Fol 4 years ago
Josh Berdine 48d96c13ba [sledge] Improve Llair_to_Fol translation of formulas 4 years ago
Josh Berdine 914ec65844 [sledge] Move Llair to Fol translation to separate module 4 years ago
Josh Berdine df4d350d48 [sledge] Remove Tuple and Project terms 4 years ago
Josh Berdine 83e9eb464a [sledge] Change applications and literals to nary 4 years ago
Josh Berdine 09c9a0a1ff [sledge] Simplify Fol normalizing constructor code 4 years ago
Josh Berdine 615f245027 [sledge] Replace RecRecord uninterpreted function symbol with Ancestor term 4 years ago
Josh Berdine 598cb0a449 [sledge] Replace empty record term with flat record terms 4 years ago
Josh Berdine c31a6e600a [sledge] Simplify record term indices from terms to ints 4 years ago
Josh Berdine 9e826c3454 [sledge] Remove Funsym.Convert 4 years ago
Josh Berdine fc841bcf0c [sledge] Remove Funsym.Label 4 years ago
Josh Berdine 2f4e3e17b6 [sledge] Remove Funsym.Float 4 years ago
Josh Berdine 70a7224543 [sledge] Remove Term.of_exp 4 years ago
Josh Berdine 3f2de05920 [sledge] Add general uninterpreted predicates and use for "ord" and "uno" 4 years ago
Josh Berdine a2332808d7 [sledge] Document function symbols 4 years ago
Josh Berdine a0a5cf159a [sledge] Separate Funsym module 4 years ago
Josh Berdine 6b5fc4be3e [sledge] Add general uninterpreted functions and applications 4 years ago
Josh Berdine ec83068651 [sledge] Minor cleanup in Fol 4 years ago
Josh Berdine 51c7e23d26 [sledge] Remove unneeded use of Formula.inject 4 years ago
Josh Berdine 0c93599cc2 [sledge] Improve printing of Fol.Context 4 years ago
Josh Berdine cc835c6e64 [sledge] Improve printing of conditional terms 4 years ago
Josh Berdine bf1f4c393a [sledge] Move renaming substitutions to Var0 4 years ago
Josh Berdine d09121d089 [sledge] Implement Fol.Var using generic implementation 4 years ago
Josh Berdine e4426acb8a [sledge] Refactor: Generalize impl of Var over repr and move to separate module 5 years ago
Josh Berdine a7c85e2262 [sledge] Refactor: Reorder Term definitions 5 years ago
Josh Berdine d8d9d4b2e5 [sledge] Refactor: Remove dead Var.of_reg{,s} 5 years ago
Josh Berdine 3ee953ebef [sledge] Test: Include steps stats in reports 5 years ago
Josh Berdine da348a603b [sledge] Improve: Solver tracing on unhandled exceptions 5 years ago
Josh Berdine 936ad83650 [sledge] Improve: Include order info in equal_or_separate 5 years ago
Josh Berdine 5f82adbf37 [sledge] Improve: Replace naive implementation of Fol.equal_or_opposite 5 years ago
Josh Berdine d8114b4688 [sledge] Improve: Normalize polarity of conditional formulas 5 years ago
Josh Berdine 74086e926a [sledge] Improve: Normalize order of symmetric binary formulas 5 years ago
Josh Berdine 334661b474 [sledge] Improve: result status reporting and unhandled exceptions 5 years ago
Josh Berdine f160ac8a62 [sledge] Improve: Print locations with relative pathnames 5 years ago
Josh Berdine f12ca72f07 [sledge] Fix: Replace Formula.disjuncts with DNF in Sh.pure 5 years ago
Josh Berdine 3e7aeed230 [sledge] Improve: Sh.fold_dnf to use iter vs list 5 years ago
Josh Berdine 60248165fd [sledge] Fix: Sh.pure 5 years ago
Josh Berdine 93c6dcc480 [sledge] Refactor: Replace Sh.with_pure with ~ignore_pure arg to Sh.fv 5 years ago
Josh Berdine 8ca41a9639 [sledge] Test: Move test modules into test directory 5 years ago
Josh Berdine 02ddb5a59f [sledge] Test: Move tests from Equality to Fol 5 years ago
Josh Berdine b0cd050d6f [sledge] Add: Replay debugging for more entry points 5 years ago
Josh Berdine 19cc35b65e [sledge] Add: Context.inter 5 years ago
Josh Berdine 53a1160bdb [sledge] Refactor: Reorder Context definitions 5 years ago
Josh Berdine ec7f02a585 [sledge] Add: Normalization of constant, equal and negated subterms/formulas 5 years ago
Josh Berdine 284a2ae165 [sledge] Add: Formula.map_terms and use it to remove Context.Subst.substf 5 years ago
Josh Berdine a51f4e5fec [sledge] Change: Normalize trivial equalities 5 years ago
Josh Berdine e5108b9ac1 [sledge] Refactor: Formula embedding into conditional term normalization 5 years ago
Josh Berdine dd9c1cd19a [sledge] Refactor: Fol.fml to private Fol.Fml 5 years ago
Josh Berdine 258d5306fb [sledge] Refactor: Revise external Context printing API 5 years ago
Josh Berdine c440ce81fe [sledge] Refactor: Replace Formula.is_false with equal ff, similarly for tt 5 years ago
Josh Berdine f20cabf7a4 [sledge] Change: Context interface to set-of-assumptions terminology 5 years ago
Josh Berdine 4da75ad2b0 [sledge] Change: Arithmetic comparison formulas to unary 5 years ago
Josh Berdine 263f5aa8a5 [sledge] Refactor: Reorder Fol definitions 5 years ago
Josh Berdine 73adcdf8af [sledge] Change: Formula to negation-normal form 5 years ago
Josh Berdine 379fedb845 [sledge] Add: Uninterpreted predicate symbols and literals to Fol 5 years ago
Josh Berdine 8f66a20afe [sledge] Refactor: Expose Context.fold_vars instead of fold_terms 5 years ago
Josh Berdine 5c4598c2e9 [sledge] Refactor: Context.difference to Solver 5 years ago
Josh Berdine df276d7be6 [sledge] Change: Move printing of Sh context and pure part to Context 5 years ago
Josh Berdine 8ced659303 [sledge] Change: Strengthen Sh.is_false by defining ito pure_approx 5 years ago
Josh Berdine 1881e990da [sledge] Change: Strengthen Sh.pure_approx with segment loc non-null 5 years ago
Josh Berdine 96aa56507f [sledge] Change: Revise Sh handling of empty and pure approximation 5 years ago
Josh Berdine f606ac0915 [sledge] Change: Sh.pure_approx to a Formula 5 years ago
Josh Berdine 867131e964 [sledge] Change: Generalize entails_eq to implies 5 years ago
Josh Berdine c9fa894a31 [sledge] Refactor: Move difference from Equality to Context 5 years ago
Josh Berdine fbc4f704ca [sledge] Fix: Fol.of_ses to normalize Ses polynomials 5 years ago
Josh Berdine f649c3693f [sledge] Fix: Fol.ses_map to account for simplification in Fol.to_ses 5 years ago
Josh Berdine b741bcd490 [sledge] Refactor: Move diff_classes from Equality to Context 5 years ago
Josh Berdine e3cbb0f27d [sledge] Add: Uninterpreted function symbols and applications to Fol 5 years ago
Josh Berdine c122577c18 [sledge] Change: Generalize Fol functional array indices from int to term 5 years ago
Josh Berdine 48833cc63b [sledge] Refactor: Expose constructors for record Terms 5 years ago
Josh Berdine 049b62f097 [sledge] Change: Sh.compare to ignore first-order context 5 years ago
Josh Berdine 8725d5fe81 [sledge] Refactor: pretty-printing of classes out of Ses to Fol 5 years ago
Josh Berdine 7e77bad4d2 [sledge] Change: Implement Fol using a solver-independent intermediate type 5 years ago
Josh Berdine a6dabc7924 [sledge] Refactor: Separate out conversion from Llair to Fol 5 years ago
Josh Berdine 896e9602f8 [sledge] Refactor: Rename Formula.conditional to Formula.cond 5 years ago
Josh Berdine 94e8b07997 [sledge] Refactor: Rename Formula.true_ and false_ to tt and ff 5 years ago
Josh Berdine 8d2bb0ddcf [sledge] Refactor: Move Ses.Term.Var.Subst to Fol.Var.Subst 5 years ago
Josh Berdine 79a4db7771 [sledge] Refactor: Make Term and Equality independent of Var.Subst 5 years ago
Josh Berdine 9cb74ac9ac [sledge] Refactor: Move Equality replay debugging to Fol 5 years ago
Josh Berdine 0568f2ee2d [sledge] Refactor: Distinguish Fol term and formula types 5 years ago
Josh Berdine 0998ce011f [sledge] Refactor: Add `formula` alias for `term` type, and use appropriately 5 years ago
Josh Berdine 4308ca649f [sledge] Remove unnecessary hash functions 5 years ago
Josh Berdine 967185e02a [sledge] Refactor: Reduce Fol sig to needed interface 5 years ago
Josh Berdine 3d1fbf3840 [sledge] Refactor: Expand sig of Fol submodules 5 years ago
Josh Berdine 0aed6eeab6 [sledge] Refactor: Rename to use "first-order logical context" terminology 5 years ago
Josh Berdine a629486c9f [sledge] Refactor: Rename Fol.Equality to Fol.Context 5 years ago
Josh Berdine dd2e7b4782 [sledge] Refactor: Add Fol module to be used for external interface of solver 5 years ago
Josh Berdine eca73cf39b [sledge] Build: Move sledge equality solver to separate lib 5 years ago
Josh Berdine 33d59b8642 [sledge] Refactor: Add Option.Import including Monad_infix and Monad_syntax 5 years ago
Josh Berdine c7556364b7 [sledge] Change: Strengthen Term invariant that exponents are integers 5 years ago
Josh Berdine 6b44eaf2e6 [sledge] Style: set ocamlformat config break-struct = force 5 years ago
Josh Berdine d5de3f78a6 [sledge] Refactor: split Equality.diff_classes out of ppx_classes_diff 5 years ago
Josh Berdine 89f60156a9 [sledge] Change: Use conjunction instead of list of terms for Sh.pure 5 years ago
Josh Berdine 1c7b3fb1f8 [sledge] Change: Avoid double-freshening during symbolic execution 5 years ago
Josh Berdine 37c90bff57 [sledge] Fix: Include fresh vars for overwritten vars in ghosts 5 years ago
Josh Berdine 323e96d4f4 [sledge] Refactor: Add monad to manage generation of fresh vars in Exec 5 years ago
Josh Berdine fe42fc912d [sledge] Change: Minor improvement of Sh.extend_us and Sh.freshen 5 years ago
Josh Berdine 6a7fb87c58 [sledge] Change: Return domain and range with Var.Subst constructors 5 years ago
Josh Berdine dcf8866ec5 [sledge] Change: Store inverted Domain_sh.from_call.subst, and clarify 5 years ago
Josh Berdine 1214ab71b7 [sledge] Refactor: Rename to use terminology for "sized sequences" 5 years ago
Josh Berdine 52dec5f4da [sledge] Refactor: Move eq_concat out of Term 5 years ago
Josh Berdine 299d06a8fb [sledge] Refactor: Remove Term.null redundant with Term.zero 5 years ago
Josh Berdine b2b420250a [sledge] Change: Use mulq instead of mul where possible 5 years ago
Josh Berdine 9e06304069 [sledge] Refactor: Factor out accessor for polynomial constant as Term.const_of 5 years ago
Josh Berdine fd75a1135e [sledge] Refactor: Factor out destructor for Integer Terms as Term.d_int 5 years ago
Josh Berdine 834260d43f [sledge] Refactor: Term.disjuncts out of Sh.pure 5 years ago
Josh Berdine 9c8f2e4a5c [sledge] Build: Move Timer to Nonstdlib 5 years ago
Josh Berdine cfc25ab825 [sledge] Refactor: Remove Nondet Llair.Exp and Term 5 years ago
Josh Berdine 4fdc2f6c76 [sledge] Build: Wrap Llair library 5 years ago
Josh Berdine f82a1c0437 [sledge] Refactor: Move Llair.t to separate Program module 5 years ago
Josh Berdine 8abad29200 [sledge] Build: Move LLAIR into separate sublibrary 5 years ago
Josh Berdine 0716b47a78 [sledge] Refactor: Strengthen signature of Reg with type equations to Exp.Reg 5 years ago
Josh Berdine 51c7e26828 [sledge] Test: Move tests for (un)signed ints from Exp_test to Term_test 5 years ago
Josh Berdine d1f8714b56 [sledge] Refactor: Move Exp.term to Term.of_exp 5 years ago
Josh Berdine dbe914e6c7 [sledge] Change: Move Exp to Term conversion to Exp.term 5 years ago
Josh Berdine 4c6ad4a2e2 [sledge] Refactor: Add global flag to Reg representation 5 years ago
Josh Berdine df3e6ded1d [sledge] Build: Promote `import` subdirectory to a toplevel `nonstdlib` library 5 years ago
Josh Berdine 529f6c9ded [sledge] Doc: Update doc of Term.map_rec_pre 5 years ago
Josh Berdine 73a0b1f81b [sledge] Build: Update to ocaml 4.10.0, dune 2.5 and core 0.14 5 years ago
Josh Berdine 5e90bc61b7 [infer] Update to core 0.14 5 years ago
Josh Berdine 143eb793af [sledge] Refactor: Add `let@` 5 years ago
Josh Berdine 4f46eb0fd7 [sledge] Refactor: Remove unused functor arg name 5 years ago
Josh Berdine 1635c1cf96 [sledge] Style: Change to less compact ocamlformat style 5 years ago
Josh Berdine 0d73a355c9 [sledge] Refactor: Simplify Term.solve_sum code 5 years ago
Josh Berdine 967a9e1c58 [sledge] Change: Rely on llvm size computation for global initializers 5 years ago
Josh Berdine 65f369cf35 [ocamlformat] Reformat repo with new version 5 years ago
Josh Berdine 9d9060d213 [sledge] Represent recursive records non-recursively 5 years ago
Josh Berdine 849c61221d [sledge] Remove Exp.size_of and Term.size_of 5 years ago
Josh Berdine 0953444c24 [sledge] Remove dead Loc.is_none 5 years ago
Josh Berdine dd3645820f [sledge] Remove Sh.var_strength, no longer used by Solver 5 years ago
Josh Berdine 209fef2256 [sledge] Optimize conjoining fresh equalities 5 years ago
Josh Berdine de20da4fb6 [sledge] Rename lib to src 5 years ago
Josh Berdine b6ddd8fe8e [sledge] Rearrange into CLI binary and LLVM-independent library 5 years ago
Josh Berdine d5158f0787 [sledge] Move Reg.demangle to frontend 5 years ago
Josh Berdine 5eebe1c733 [sledge] Add entry-points config to Control.exec_opts 5 years ago
Josh Berdine e6ccd3e497 [sledge] Minor tracing improvements 5 years ago
Josh Berdine 556739e17c [sledge] Minor optimization of Sh.bind_exists 5 years ago
Josh Berdine f80e0977cd [sledge] Make Sh.and_cong robust wrt conjoining to an unsat formula 5 years ago
Josh Berdine 37ddf95a49 [sledge] Strengthen and simplify canonizer for Extract terms 5 years ago
Josh Berdine f8a490d477 [sledge] Enforce variable context conditions in solver goals 5 years ago
Josh Berdine f8f47c0755 [sledge] Fix a few existential context fumbles 5 years ago
Josh Berdine 991c0c66e8 [sledge] Remove unnecessary vocabulary updates 5 years ago
Josh Berdine 8b8e156f83 [sledge] Make Solver.judgment a private type 5 years ago
Josh Berdine 9488a404ff [sledge] Compare logical variables by id only 5 years ago
Josh Berdine 0f1db1bd8b [sledge] Fix potential name clash when executing memmov 5 years ago
Josh Berdine 24c62fd39b [sledge] Strengthen canonizer of Extract terms 5 years ago
Josh Berdine 6a17078bec [sledge] Make context handling in Sh.or_ more robust 5 years ago
Josh Berdine 5d429ea075 [sledge] Improve Equality.extend 5 years ago
Josh Berdine f7707ff4be [sledge] Comments 5 years ago
Josh Berdine c8e2c3f895 [sledge] Detect inconsistent pure constraints during Sh simplification 5 years ago
Josh Berdine fa23e85bb4 [sledge] Dedup equality classes when printing 5 years ago
Josh Berdine 8383dcebb8 [sledge] Simplify states during symbolic execution 5 years ago
Josh Berdine b16e85d10d [sledge] Eliminate redundant existential quantifiers 5 years ago
Josh Berdine e520e8507d [sledge] Update Equality test results 5 years ago
Josh Berdine 9d97507e09 [sledge] Update and add Sh tests 5 years ago
Josh Berdine 33e702cd8b [sledge] Improve Sh printing for Sh-internal tracing 5 years ago
Josh Berdine a6f948c2c3 [sledge] Strengthen handling of existential segments 5 years ago
Josh Berdine b3cdac76e4 [sledge] Remove hacky treatment of tautologous existential equalities 5 years ago
Josh Berdine 80afaaee1b [sledge] Detect unsat subtrahend when subtracting pure terms 5 years ago
Josh Berdine b81fb893ea [sledge] Factor out Sh.and_subst 5 years ago
Josh Berdine fc2dbdd2fc [sledge] Strengthen existential witnessing for memory theory 5 years ago
Josh Berdine 0b88d99c79 [sledge] Strengthen quantifier witnessing 5 years ago
Josh Berdine ae8cd953f8 [sledge] Fix potential unsyncing of var contexts in solver 5 years ago
Josh Berdine a52085a718 [sledge] Fix Equality.canon to handle changing term classification 5 years ago
Josh Berdine 13aa772b68 [sledge] Strengthen normalization of equality between Concats 5 years ago
Josh Berdine 3369b27cf1 [sledge] Reorder Term definitions 5 years ago
Josh Berdine 2be566a09b [sledge] Fix Solver tracing 5 years ago
Josh Berdine 2a0eca669d [sledge] Move mediation between Term and Equality APIs from Sh to Equality 5 years ago
Josh Berdine 29eb8fa876 [sledge] Replace solution substitution trimming with partitioning 5 years ago
Josh Berdine 92b942e4ee [sledge] Simplify terminology from solvable to non-interpreted 5 years ago
Josh Berdine a34236bacd [sledge] Distinguish star and or when computing variable strength 5 years ago
Josh Berdine 9d3898044d [sledge] Canonize e / -1 to -1×e 5 years ago
Josh Berdine 65f38d68cc [sledge] Refactor to allow more recursion between arithmetic canonizer cases 5 years ago
Josh Berdine 99e6e9494b [sledge] Conditionally ignore equality relation when computing free variables 5 years ago
Josh Berdine 9d12f6502f [sledge] Make aggregate sizes explicit when constructing equalities 5 years ago
Josh Berdine 77cc835199 [sledge] Strengthen Equality.solve_for_vars to concatenate extracts 5 years ago
Josh Berdine f1d94d58b0 [sledge] Strengthen Equality.solve_for_vars for vars under Memory 5 years ago
Josh Berdine 54a3982b1d [sledge] Simplify variable occurrence checking in Equality.solve 5 years ago
Josh Berdine c8ed6dae63 [sledge] Optimize and simplify Equality.solve_interp_eqs 5 years ago
Josh Berdine ffdb429f5e [sledge] Factor solve_poly_eq out of solve_interp_eq 5 years ago
Josh Berdine f3f41fbdf2 [sledge] Filter out trivial pure constraints in Sh.map 5 years ago
Josh Berdine 1e32743312 [sledge] Add Shostak solver for aggregate theory 5 years ago
Josh Berdine 232372f083 [sledge] Factor orient out of solve 5 years ago
Josh Berdine a75f2701c3 [sledge] Lambda-lift Equality.solve_ 5 years ago
Josh Berdine a7b0d68574 [sledge] Support Equality.solve generating fresh variables 5 years ago
Josh Berdine 79a74f07c5 [sledge] Pass universal context to Equality.solve 5 years ago
Josh Berdine 06fcb210c9 [sledge] Add Shostak canonizer for aggregate theory 5 years ago
Josh Berdine 7bb1ec073a [sledge] Strengthen Term.invariant on aggregates 5 years ago
Josh Berdine 539b4a0b46 [sledge] Add term to Extract a slice out of an aggregate value 5 years ago
Josh Berdine 8af2a4644a [sledge] Refine dropping of tautologous existential constraints 5 years ago
Josh Berdine 65cff68ae8 [sledge] Strengthen Solver's treatment of existentials using Equality 5 years ago
Josh Berdine 200091fc78 [sledge] Add Equality.Subst.trim 5 years ago
Josh Berdine f0a660792e [sledge] Add Equality.solve_for_vars 5 years ago
Josh Berdine 1afd4f55ba [sledge] Classify Memory and Concat terms as Simplified 5 years ago
Josh Berdine 173a5c0653 [sledge] Exclude equality relation from Sh.fold_vars 5 years ago
Josh Berdine 003479dcc1 [sledge] Factor primitive map function out of Sh.apply_subst 5 years ago
Josh Berdine de52574caf [sledge] Generalize Term.solve_zero_eq to specify solved-for subterm 5 years ago