У меня есть гипотеза в локальном контексте, назовем ее H, которая имеет вид true=true -> conclusion. Какую тактику я могу использовать, чтобы отбросить посылку и сохранить только заключение?
H
true=true -> conclusion
Это утверждает предпосылку как подцель, а затем пытается доказать и ее, и исходную цель с предварительным выводом H, используя тривиальную тактику.
lapply H; trivial.
Используйте тактику specialize: http://coq.inria.fr/doc/Reference-Manual011.html#@tactic35
specialize
specialize (H (eq_refl true)).
specialize (H (eq_refl true))
Я придумал следующее. Любая из этих работ:
утверждают (H2: заключение). применять H. рефлексивность. подтвердить (H2: true-> true). рефлексивность. применить H в H2.
утверждают (H2: заключение). применять H. рефлексивность.
подтвердить (H2: true-> true). рефлексивность. применить H в H2.
assert (H2 := H (eq_refl true)). тоже работает. Я все еще хотел бы знать о более чистых решениях.
assert (H2 := H (eq_refl true)).