Commit 304617d7 authored by MARCHE Claude's avatar MARCHE Claude

coq output

parent 70ae772f
......@@ -140,7 +140,7 @@ DRIVER_CMO := call_provers.cmo dynlink_compat.cmo driver_parser.cmo\
driver_lexer.cmo driver.cmo
DRIVER_CMO := $(addprefix src/driver/,$(DRIVER_CMO))
PRINTER_CMO := print_real.cmo alt_ergo.cmo why3.cmo smt.cmo
PRINTER_CMO := print_real.cmo alt_ergo.cmo why3.cmo smt.cmo coq.cmo
PRINTER_CMO := $(addprefix src/printer/,$(PRINTER_CMO))
CMO = $(UTIL_CMO) $(CORE_CMO) $(PARSER_CMO) $(DRIVER_CMO)\
......@@ -170,6 +170,9 @@ test: bin/why.byte $(TOOLS)
--output-file - --goal Test.G src/test.why --timeout 3
bin/why.byte --driver drivers/alt_ergo.drv -I theories/ \
--call --goal Test.G src/test.why --timeout 3
bin/why.byte --driver drivers/coq.drv -I theories/ \
--output-file tmp.v --goal Test.G src/test.why
coqc -require ZArith tmp.v
testl: bin/whyl.byte
ocamlrun -bt bin/whyl.byte -I theories/ src/programs/test.mlw
......
printer "coq"
filename "%f_%t_%s.v"
call_on_file "coqc %s"
theory BuiltIn
syntax type int "Z"
syntax type real "R"
syntax logic (_=_) "(%1 = %2)"
syntax logic (_<>_) "(%1 <> %2)"
end
theory int.Int
prelude "Require ZArith."
syntax logic zero "0%Z"
syntax logic one "1%Z"
syntax logic (_+_) "(%1 + %2)%Z"
syntax logic (_-_) "(%1 - %2)%Z"
syntax logic (_*_) "(%1 * %2)%Z"
syntax logic (-_) "(-%1)%Z"
syntax logic (_<=_) "(%1 <= %2)%Z"
syntax logic (_<_) "(%1 < %2)%Z"
syntax logic (_>=_) "(%1 >= %2)%Z"
syntax logic (_>_) "(%1 > %2)%Z"
remove prop CommutativeGroup.Comm.Comm
remove prop CommutativeGroup.Assoc.Assoc
remove prop CommutativeGroup.Unit_def
remove prop CommutativeGroup.Inv_def
remove prop Assoc.Assoc
remove prop Mul_distr
remove prop Comm.Comm
remove prop Unitary
end
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment