You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We currently translate Nat-based expressions in the smt tactic as Ints greater than zero. However this translation is not proof-producing, and it will cause issues for proof reconstruction when the solver has proved something about a positive integer, but the Lean goal is still about natural numbers. We agreed that the way to go here is to have a separate smt_nat_to_int (or something) preprocessing tactic which provably rewrites the goal to talk about positive integers. After running it, the goal would only include integers at which point the core smt translation can just raise an error whenever it encounters a Nat.
See here for a usage of the more general Transfer tactic in Isabelle/HOL.
The text was updated successfully, but these errors were encountered:
We currently translate
Nat
-based expressions in thesmt
tactic asInt
s greater than zero. However this translation is not proof-producing, and it will cause issues for proof reconstruction when the solver has proved something about a positive integer, but the Lean goal is still about natural numbers. We agreed that the way to go here is to have a separatesmt_nat_to_int
(or something) preprocessing tactic which provably rewrites the goal to talk about positive integers. After running it, the goal would only include integers at which point the coresmt
translation can just raise an error whenever it encounters aNat
.See here for a usage of the more general Transfer tactic in Isabelle/HOL.
The text was updated successfully, but these errors were encountered: