HOLE Home Higher-Order Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  HOLE Home  >  Th. List  >  orval Unicode version

Theorem orval 137
Description: Value of the disjunction.
Hypotheses
Ref Expression
imval.1 |- A:*
imval.2 |- B:*
Assertion
Ref Expression
orval |- T. |= [[A \/ B] = (A.\x:* [[A ==> x:*] ==> [[B ==> x:*] ==> x:*]])]
Distinct variable groups:   x,A   x,B

Proof of Theorem orval
Dummy variables p q are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 wor 130 . . 3 |- \/ :(* -> (* -> *))
2 imval.1 . . 3 |- A:*
3 imval.2 . . 3 |- B:*
41, 2, 3wov 64 . 2 |- [A \/ B]:*
5 df-or 122 . . 3 |- T. |= [ \/ = \p:* \q:* (A.\x:* [[p:* ==> x:*] ==> [[q:* ==> x:*] ==> x:*]])]
61, 2, 3, 5oveq 92 . 2 |- T. |= [[A \/ B] = [A\p:* \q:* (A.\x:* [[p:* ==> x:*] ==> [[q:* ==> x:*] ==> x:*]])B]]
7 wal 124 . . . 4 |- A.:((* -> *) -> *)
8 wim 127 . . . . . 6 |- ==> :(* -> (* -> *))
9 wv 58 . . . . . . 7 |- p:*:*
10 wv 58 . . . . . . 7 |- x:*:*
118, 9, 10wov 64 . . . . . 6 |- [p:* ==> x:*]:*
12 wv 58 . . . . . . . 8 |- q:*:*
138, 12, 10wov 64 . . . . . . 7 |- [q:* ==> x:*]:*
148, 13, 10wov 64 . . . . . 6 |- [[q:* ==> x:*] ==> x:*]:*
158, 11, 14wov 64 . . . . 5 |- [[p:* ==> x:*] ==> [[q:* ==> x:*] ==> x:*]]:*
1615wl 59 . . . 4 |- \x:* [[p:* ==> x:*] ==> [[q:* ==> x:*] ==> x:*]]:(* -> *)
177, 16wc 45 . . 3 |- (A.\x:* [[p:* ==> x:*] ==> [[q:* ==> x:*] ==> x:*]]):*
189, 2weqi 68 . . . . . . . 8 |- [p:* = A]:*
1918id 25 . . . . . . 7 |- [p:* = A] |= [p:* = A]
208, 9, 10, 19oveq1 89 . . . . . 6 |- [p:* = A] |= [[p:* ==> x:*] = [A ==> x:*]]
218, 11, 14, 20oveq1 89 . . . . 5 |- [p:* = A] |= [[[p:* ==> x:*] ==> [[q:* ==> x:*] ==> x:*]] = [[A ==> x:*] ==> [[q:* ==> x:*] ==> x:*]]]
2215, 21leq 81 . . . 4 |- [p:* = A] |= [\x:* [[p:* ==> x:*] ==> [[q:* ==> x:*] ==> x:*]] = \x:* [[A ==> x:*] ==> [[q:* ==> x:*] ==> x:*]]]
237, 16, 22ceq2 80 . . 3 |- [p:* = A] |= [(A.\x:* [[p:* ==> x:*] ==> [[q:* ==> x:*] ==> x:*]]) = (A.\x:* [[A ==> x:*] ==> [[q:* ==> x:*] ==> x:*]])]
248, 2, 10wov 64 . . . . . 6 |- [A ==> x:*]:*
258, 24, 14wov 64 . . . . 5 |- [[A ==> x:*] ==> [[q:* ==> x:*] ==> x:*]]:*
2625wl 59 . . . 4 |- \x:* [[A ==> x:*] ==> [[q:* ==> x:*] ==> x:*]]:(* -> *)
2712, 3weqi 68 . . . . . . . . 9 |- [q:* = B]:*
2827id 25 . . . . . . . 8 |- [q:* = B] |= [q:* = B]
298, 12, 10, 28oveq1 89 . . . . . . 7 |- [q:* = B] |= [[q:* ==> x:*] = [B ==> x:*]]
308, 13, 10, 29oveq1 89 . . . . . 6 |- [q:* = B] |= [[[q:* ==> x:*] ==> x:*] = [[B ==> x:*] ==> x:*]]
318, 24, 14, 30oveq2 91 . . . . 5 |- [q:* = B] |= [[[A ==> x:*] ==> [[q:* ==> x:*] ==> x:*]] = [[A ==> x:*] ==> [[B ==> x:*] ==> x:*]]]
3225, 31leq 81 . . . 4 |- [q:* = B] |= [\x:* [[A ==> x:*] ==> [[q:* ==> x:*] ==> x:*]] = \x:* [[A ==> x:*] ==> [[B ==> x:*] ==> x:*]]]
337, 26, 32ceq2 80 . . 3 |- [q:* = B] |= [(A.\x:* [[A ==> x:*] ==> [[q:* ==> x:*] ==> x:*]]) = (A.\x:* [[A ==> x:*] ==> [[B ==> x:*] ==> x:*]])]
3417, 2, 3, 23, 33ovl 107 . 2 |- T. |= [[A\p:* \q:* (A.\x:* [[p:* ==> x:*] ==> [[q:* ==> x:*] ==> x:*]])B] = (A.\x:* [[A ==> x:*] ==> [[B ==> x:*] ==> x:*]])]
354, 6, 34eqtri 85 1 |- T. |= [[A \/ B] = (A.\x:* [[A ==> x:*] ==> [[B ==> x:*] ==> x:*]])]
Colors of variables: type var term
Syntax hints:  tv 1   -> ht 2  *hb 3  kc 5  \kl 6   = ke 7  T.kt 8  [kbr 9   |= wffMMJ2 11  wffMMJ2t 12   ==> tim 111  A.tal 112   \/ tor 114
This theorem was proved from axioms:  ax-syl 15  ax-jca 17  ax-simpl 20  ax-simpr 21  ax-id 24  ax-trud 26  ax-cb1 29  ax-cb2 30  ax-refl 39  ax-eqmp 42  ax-ceq 46  ax-beta 60  ax-distrc 61  ax-leq 62  ax-distrl 63  ax-hbl1 93  ax-17 95  ax-inst 103
This theorem depends on definitions:  df-ov 65  df-al 116  df-an 118  df-im 119  df-or 122
This theorem is referenced by:  ecase  153  olc  154  orc  155
  Copyright terms: Public domain W3C validator