Advertisement
Guest User

exame_coq

a guest
Jul 4th, 2018
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
OCaml 1.79 KB | None | 0 0
  1. (** 1) [3 pontos] Prove ou refute, pelo método do tableux analíticos da LPC, os seguintes sequentes:**)
  2.  
  3. (** a) p -> q, q -> r |- p -> r**)
  4.  
  5. (** b) p, p /\ q -> r |- r **)
  6.  
  7. Require Import List.
  8. Import ListNotations.
  9. Require Import Arith.
  10.  
  11. (** 2) [1 ponto] Prove o seguinte teorema sobre rev de listas*)
  12. (** Dica: rev_involutive e f_equal podem ajudar *)
  13. Theorem rev_exercise1 : forall (l l' : list nat),
  14. Admitted.
  15.  
  16. (** 3) [1 ponto] Prove este exercício do doit3. Os teoremas necessários já estão no espaço de nome.
  17.  Utilize Search para encontra-los. PS: Não utilize o teorema PeanoNat.Nat.add_comm ou outro equivalente
  18. a esta questão. *)
  19. Theorem plus_comm : forall n m : nat, n + m = m + n.
  20. Admitted.
  21.  
  22. (** 4) [1 ponto] Prove a seguinte implicação *)
  23. Theorem  implication_massacration : forall P Q R T K S : Prop, (P -> Q) -> (Q -> R) -> (R -> S) -> (S -> T) -> (T -> K) -> P -> K.
  24. Admitted.
  25.  
  26. (** 5) [1 ponto] Prove este exercício do doit12. *)
  27. (** Prove that "[P] holds for all [x]" implies "there is no [x] for
  28.     which [P] does not hold."  (Hint: [destruct H as [x E]] works on
  29.     existential assumptions!)  *)
  30. Theorem dist_not_exists : forall (X:Type) (P : X -> Prop),
  31.   (forall x, P x) -> ~ (exists x, ~ P x).
  32. Admitted.
  33.  
  34. (** 6) [0.5 ponto] Prove este exercício do doit11. *)
  35. Theorem not_implies_our_not : forall (P:Prop),
  36.   ~ P -> (forall (Q:Prop), P -> Q).
  37. Admitted.
  38.  
  39. (** 7) [0.5 ponto] Prove este exercício do doit11. *)
  40. Lemma proj1 : forall P Q : Prop,
  41.   P /\ Q -> P.
  42. Admitted.
  43.  
  44. (** 8) [1 ponto] Prove este existencial *)
  45. Theorem whatM : forall m, (exists x, 2 + m = x) -> (exists x,x = 3 + m).
  46. Admitted.
  47.  
  48. (** 9) [1 ponto] Prove este exercício do doit11  *)
  49. Lemma mult_eq_0 :
  50.   forall n m, n * m = 0 -> n = 0 \/ m = 0.
  51. Admitted.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement