diff options
author | ckeller <ckeller@users.noreply.github.com> | 2019-03-15 11:23:55 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-03-15 11:23:55 +0100 |
commit | ae455fa3aa29c872c9c5b2736fff861afebcd051 (patch) | |
tree | 1db2df3a7bd9ca076ea4007d59557a549af9dc04 /src/lia | |
parent | 4a610de645ca2bb505c97dd082220a57595019ad (diff) | |
download | smtcoq-ae455fa3aa29c872c9c5b2736fff861afebcd051.tar.gz smtcoq-ae455fa3aa29c872c9c5b2736fff861afebcd051.zip |
V8.9 (#43)
* New syntax for implicit arguments
* Towards 8.9: problems with Micromega plugin
* Move to _CoqProject
* Back to name Makefile
* Switch to Makefile.local instead of -extra
* The compilation issue is a Coq bug
* Ok with 8.9
* INSTALL with 8.9
* Everything ok with 8.9
Diffstat (limited to 'src/lia')
-rw-r--r-- | src/lia/lia.ml | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/lia/lia.ml b/src/lia/lia.ml index d8ed560..d546559 100644 --- a/src/lia/lia.ml +++ b/src/lia/lia.ml @@ -193,6 +193,15 @@ let binop_list tbl op def l = let smt_clause_to_coq_micromega_formula tbl cl = binop_list tbl (fun x y -> C(x,y)) TT (List.map Form.neg cl) +(* backported from Coq-8.8.2 *) +(* val tauto_lia : Mc.z formula -> Certificate.Mc.zArithProof list option *) +let tauto_lia ff = + let prover = linear_Z in + let cnf_ff,_ = cnf Mc.negate Mc.normalise Mc.zunsat Mc.zdeduce ff in + match witness_list_tags [prover] cnf_ff with + | None -> None + | Some l -> Some (List.map fst l) + (* call to micromega solver *) let build_lia_certif cl = let tbl = create_tbl 13 in |