Skip to content

Instantly share code, notes, and snippets.

@MiyamonY
Created June 21, 2014 10:27
Show Gist options
  • Save MiyamonY/cfa9374deea9a7046e69 to your computer and use it in GitHub Desktop.
Save MiyamonY/cfa9374deea9a7046e69 to your computer and use it in GitHub Desktop.
when hypothesis is instantiated, we first generalize the hypothesis
Theorem instantiated :
forall m:nat,
m <= 0 -> m = 0.
Proof.
intros. induction H.
- reflexivity.
- subst. Abort.
Theorem generalized :
forall m n,
m <= n -> n = 0 -> m = 0.
Proof.
intros. induction H.
- assumption.
- inversion H0.
Qed.
Theorem lt_0_is_0 :
forall m:nat,
m <= 0 -> m =0.
Proof.
intros. specialize(generalized _ _ H eq_refl).
trivial.
Qed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment