File: bug_1754.v

package info (click to toggle)
coq-doc 8.16.1-1
  • links: PTS, VCS
  • area: non-free
  • in suites: bookworm
  • size: 42,788 kB
  • sloc: ml: 219,673; sh: 4,035; python: 3,372; ansic: 2,529; makefile: 728; lisp: 279; javascript: 87; xml: 24; sed: 2
file content (24 lines) | stat: -rw-r--r-- 673 bytes parent folder | download | duplicates (15)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Axiom hp : Set.
Axiom cont : nat -> hp -> Prop.
Axiom sconj : (hp -> Prop) -> (hp -> Prop) -> hp -> Prop.
Axiom sconjImpl : forall h A B,
  (sconj A B) h -> forall (A' B': hp -> Prop),
    (forall h', A h' -> A' h') ->
    (forall h', B h' -> B' h') ->
    (sconj A' B') h.

Definition cont' (h:hp) := exists y, cont y h.

Lemma foo : forall h x y A,
  (sconj (cont x) (sconj (cont y) A)) h ->
  (sconj cont' (sconj cont' A)) h.
Proof.
  intros h x y A H.
  eapply sconjImpl.
  2:intros h' Hp'; econstructor; apply Hp'.
  2:intros h' Hp'; eapply sconjImpl.
  3:intros h'' Hp''; econstructor; apply Hp''.
  3:intros h'' Hp''; apply Hp''.
  2:apply Hp'.
  clear H.
Admitted.