我正在寻找一种方法,以获得一个低渗,它的名字,以配合它。就像这样:
Ltac mytactic h_name :=
let h := hyp_from_name h_name in
match h with
| _ /\ _ => do_something
| _ => print_error_message
end
.会像这样使用:
H0 : A /\ B
==================
A
Coq < mytactic H0.谢谢。
发布于 2017-06-29 11:26:24
我不确定我完全理解你的问题,但我会尽力的。您可以像这样使用type of <term>结构:
Ltac mytactic H :=
match type of H with
| _ /\ _ =>
let H1 := fresh in
let H2 := fresh in
destruct H as [H1 H2]; try (inversion H1; inversion H2; subst)
| _ => fail "Algo salió mal, mi amigo"
end.
Example por_ejemplo x : x >= 0 /\ x <= 0 -> x = 0.
Proof.
intros H.
now mytactic H.
Qed.https://stackoverflow.com/questions/44820480
复制相似问题