In Coq, when attempting to prove equality of records, is there a tactic that will decompose that into equality of all of its fields? For example,
Record R := {x:nat;y:nat}.
Variables a b c d : nat.
Lemma eqr : {|x:=a;y:=b|} = {|x:=c;y:=d|}.
Is there a tactic that will reduce this to a = c /\ b = d
? Note that in general, any of a b c d
might be big complicated proof terms (which I can then discharge with a proof irrelevance axiom).
coq-tactic
says: "Tactics are programs written in Ltac, the untyped language used in theCoq
proof assistant to transform goals and terms." In my understanding this means questions about how to write tactics using Ltac, or questions on proof automation in general. But I admit the description is a bit ambiguous. – Ashokcoq-ltac
; (3) addcoq-ltac
to some posts to show its intended usage; (4) maybe we should go through allcoq-tactic
questions (there are 56 now) and make sure they are really about tactic-related issues. – Ashokcoq-ltac
.ltac
alone seems perfectly fine. If you search for ltac on SO you only get Coq related questions. – Newby