lean4-htt/tests/lean/run/comp_val4.lean
Leonardo de Moura f9fb041e04 fix(library/comp_val): mk_int_val_ne_proof
There was a typo in the proof generation. The weird part is that the
proof was valid, but it was very inefficient to check.
The proof was valid because ((n:int) ≥ m) reduces to true/false if n and
m are integer numerals. Thus, if ((n:int) ≥ m) holds then `trivial` is a
valid proof.
However, the reduction is extremely inefficient since it relies on
computations in unary.

In the buggy version, we provided a proof for (a >= 0) where (b >= 0)
was expected. However, both types are definitionally equal to true.
This is why the proof worked.
2016-12-24 15:54:48 -08:00

16 lines
323 B
Text

open tactic
example : (1030912003002020:int) ≠ 1021992923928 :=
by comp_val
example : -(1030912003002020:int) ≠ 1021992923928 :=
by comp_val
example : (1030912003002020:int) ≠ -1021992923928 :=
by comp_val
example : -(1030912003002020:int) ≠ 0 :=
by comp_val
example : (0:int) ≠ 1021992923928 :=
by comp_val