MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  boxriin Structured version   Visualization version   Unicode version

Theorem boxriin 7950
Description: A rectangular subset of a rectangular set can be recovered as the relative intersection of single-axis restrictions. (Contributed by Stefan O'Rear, 22-Feb-2015.)
Assertion
Ref Expression
boxriin  |-  ( A. x  e.  I  A  C_  B  ->  X_ x  e.  I  A  =  (
X_ x  e.  I  B  i^i  |^|_ y  e.  I  X_ x  e.  I  if ( x  =  y ,  A ,  B
) ) )
Distinct variable groups:    y, A    y, B    x, I, y
Allowed substitution hints:    A( x)    B( x)

Proof of Theorem boxriin
Dummy variable  z is distinct from all other variables.
StepHypRef Expression
1 simprl 794 . . . . 5  |-  ( ( A. x  e.  I  A  C_  B  /\  (
z  Fn  I  /\  A. x  e.  I  ( z `  x )  e.  A ) )  ->  z  Fn  I
)
2 ssel 3597 . . . . . . . 8  |-  ( A 
C_  B  ->  (
( z `  x
)  e.  A  -> 
( z `  x
)  e.  B ) )
32ral2imi 2947 . . . . . . 7  |-  ( A. x  e.  I  A  C_  B  ->  ( A. x  e.  I  (
z `  x )  e.  A  ->  A. x  e.  I  ( z `  x )  e.  B
) )
43adantr 481 . . . . . 6  |-  ( ( A. x  e.  I  A  C_  B  /\  z  Fn  I )  ->  ( A. x  e.  I 
( z `  x
)  e.  A  ->  A. x  e.  I 
( z `  x
)  e.  B ) )
54impr 649 . . . . 5  |-  ( ( A. x  e.  I  A  C_  B  /\  (
z  Fn  I  /\  A. x  e.  I  ( z `  x )  e.  A ) )  ->  A. x  e.  I 
( z `  x
)  e.  B )
6 eleq2 2690 . . . . . . . . . . . 12  |-  ( A  =  if ( x  =  y ,  A ,  B )  ->  (
( z `  x
)  e.  A  <->  ( z `  x )  e.  if ( x  =  y ,  A ,  B ) ) )
7 eleq2 2690 . . . . . . . . . . . 12  |-  ( B  =  if ( x  =  y ,  A ,  B )  ->  (
( z `  x
)  e.  B  <->  ( z `  x )  e.  if ( x  =  y ,  A ,  B ) ) )
8 simplr 792 . . . . . . . . . . . 12  |-  ( ( ( A  C_  B  /\  ( z `  x
)  e.  A )  /\  x  =  y )  ->  ( z `  x )  e.  A
)
9 ssel2 3598 . . . . . . . . . . . . 13  |-  ( ( A  C_  B  /\  ( z `  x
)  e.  A )  ->  ( z `  x )  e.  B
)
109adantr 481 . . . . . . . . . . . 12  |-  ( ( ( A  C_  B  /\  ( z `  x
)  e.  A )  /\  -.  x  =  y )  ->  (
z `  x )  e.  B )
116, 7, 8, 10ifbothda 4123 . . . . . . . . . . 11  |-  ( ( A  C_  B  /\  ( z `  x
)  e.  A )  ->  ( z `  x )  e.  if ( x  =  y ,  A ,  B ) )
1211ex 450 . . . . . . . . . 10  |-  ( A 
C_  B  ->  (
( z `  x
)  e.  A  -> 
( z `  x
)  e.  if ( x  =  y ,  A ,  B ) ) )
1312ral2imi 2947 . . . . . . . . 9  |-  ( A. x  e.  I  A  C_  B  ->  ( A. x  e.  I  (
z `  x )  e.  A  ->  A. x  e.  I  ( z `  x )  e.  if ( x  =  y ,  A ,  B ) ) )
1413adantr 481 . . . . . . . 8  |-  ( ( A. x  e.  I  A  C_  B  /\  z  Fn  I )  ->  ( A. x  e.  I 
( z `  x
)  e.  A  ->  A. x  e.  I 
( z `  x
)  e.  if ( x  =  y ,  A ,  B ) ) )
1514impr 649 . . . . . . 7  |-  ( ( A. x  e.  I  A  C_  B  /\  (
z  Fn  I  /\  A. x  e.  I  ( z `  x )  e.  A ) )  ->  A. x  e.  I 
( z `  x
)  e.  if ( x  =  y ,  A ,  B ) )
161, 15jca 554 . . . . . 6  |-  ( ( A. x  e.  I  A  C_  B  /\  (
z  Fn  I  /\  A. x  e.  I  ( z `  x )  e.  A ) )  ->  ( z  Fn  I  /\  A. x  e.  I  ( z `  x )  e.  if ( x  =  y ,  A ,  B ) ) )
1716ralrimivw 2967 . . . . 5  |-  ( ( A. x  e.  I  A  C_  B  /\  (
z  Fn  I  /\  A. x  e.  I  ( z `  x )  e.  A ) )  ->  A. y  e.  I 
( z  Fn  I  /\  A. x  e.  I 
( z `  x
)  e.  if ( x  =  y ,  A ,  B ) ) )
181, 5, 17jca31 557 . . . 4  |-  ( ( A. x  e.  I  A  C_  B  /\  (
z  Fn  I  /\  A. x  e.  I  ( z `  x )  e.  A ) )  ->  ( ( z  Fn  I  /\  A. x  e.  I  (
z `  x )  e.  B )  /\  A. y  e.  I  (
z  Fn  I  /\  A. x  e.  I  ( z `  x )  e.  if ( x  =  y ,  A ,  B ) ) ) )
19 simprll 802 . . . . 5  |-  ( ( A. x  e.  I  A  C_  B  /\  (
( z  Fn  I  /\  A. x  e.  I 
( z `  x
)  e.  B )  /\  A. y  e.  I  ( z  Fn  I  /\  A. x  e.  I  ( z `  x )  e.  if ( x  =  y ,  A ,  B ) ) ) )  -> 
z  Fn  I )
20 simpr 477 . . . . . . . 8  |-  ( ( z  Fn  I  /\  A. x  e.  I  ( z `  x )  e.  if ( x  =  y ,  A ,  B ) )  ->  A. x  e.  I 
( z `  x
)  e.  if ( x  =  y ,  A ,  B ) )
2120ralimi 2952 . . . . . . 7  |-  ( A. y  e.  I  (
z  Fn  I  /\  A. x  e.  I  ( z `  x )  e.  if ( x  =  y ,  A ,  B ) )  ->  A. y  e.  I  A. x  e.  I 
( z `  x
)  e.  if ( x  =  y ,  A ,  B ) )
22 ralcom 3098 . . . . . . . 8  |-  ( A. y  e.  I  A. x  e.  I  (
z `  x )  e.  if ( x  =  y ,  A ,  B )  <->  A. x  e.  I  A. y  e.  I  ( z `  x )  e.  if ( x  =  y ,  A ,  B ) )
23 iftrue 4092 . . . . . . . . . . . 12  |-  ( x  =  y  ->  if ( x  =  y ,  A ,  B )  =  A )
2423equcoms 1947 . . . . . . . . . . 11  |-  ( y  =  x  ->  if ( x  =  y ,  A ,  B )  =  A )
2524eleq2d 2687 . . . . . . . . . 10  |-  ( y  =  x  ->  (
( z `  x
)  e.  if ( x  =  y ,  A ,  B )  <-> 
( z `  x
)  e.  A ) )
2625rspcva 3307 . . . . . . . . 9  |-  ( ( x  e.  I  /\  A. y  e.  I  ( z `  x )  e.  if ( x  =  y ,  A ,  B ) )  -> 
( z `  x
)  e.  A )
2726ralimiaa 2951 . . . . . . . 8  |-  ( A. x  e.  I  A. y  e.  I  (
z `  x )  e.  if ( x  =  y ,  A ,  B )  ->  A. x  e.  I  ( z `  x )  e.  A
)
2822, 27sylbi 207 . . . . . . 7  |-  ( A. y  e.  I  A. x  e.  I  (
z `  x )  e.  if ( x  =  y ,  A ,  B )  ->  A. x  e.  I  ( z `  x )  e.  A
)
2921, 28syl 17 . . . . . 6  |-  ( A. y  e.  I  (
z  Fn  I  /\  A. x  e.  I  ( z `  x )  e.  if ( x  =  y ,  A ,  B ) )  ->  A. x  e.  I 
( z `  x
)  e.  A )
3029ad2antll 765 . . . . 5  |-  ( ( A. x  e.  I  A  C_  B  /\  (
( z  Fn  I  /\  A. x  e.  I 
( z `  x
)  e.  B )  /\  A. y  e.  I  ( z  Fn  I  /\  A. x  e.  I  ( z `  x )  e.  if ( x  =  y ,  A ,  B ) ) ) )  ->  A. x  e.  I 
( z `  x
)  e.  A )
3119, 30jca 554 . . . 4  |-  ( ( A. x  e.  I  A  C_  B  /\  (
( z  Fn  I  /\  A. x  e.  I 
( z `  x
)  e.  B )  /\  A. y  e.  I  ( z  Fn  I  /\  A. x  e.  I  ( z `  x )  e.  if ( x  =  y ,  A ,  B ) ) ) )  -> 
( z  Fn  I  /\  A. x  e.  I 
( z `  x
)  e.  A ) )
3218, 31impbida 877 . . 3  |-  ( A. x  e.  I  A  C_  B  ->  ( (
z  Fn  I  /\  A. x  e.  I  ( z `  x )  e.  A )  <->  ( (
z  Fn  I  /\  A. x  e.  I  ( z `  x )  e.  B )  /\  A. y  e.  I  ( z  Fn  I  /\  A. x  e.  I  ( z `  x )  e.  if ( x  =  y ,  A ,  B ) ) ) ) )
33 vex 3203 . . . 4  |-  z  e. 
_V
3433elixp 7915 . . 3  |-  ( z  e.  X_ x  e.  I  A 
<->  ( z  Fn  I  /\  A. x  e.  I 
( z `  x
)  e.  A ) )
35 elin 3796 . . . 4  |-  ( z  e.  ( X_ x  e.  I  B  i^i  |^|_ y  e.  I  X_ x  e.  I  if ( x  =  y ,  A ,  B ) )  <->  ( z  e.  X_ x  e.  I  B  /\  z  e.  |^|_ y  e.  I  X_ x  e.  I  if (
x  =  y ,  A ,  B ) ) )
3633elixp 7915 . . . . 5  |-  ( z  e.  X_ x  e.  I  B 
<->  ( z  Fn  I  /\  A. x  e.  I 
( z `  x
)  e.  B ) )
37 eliin 4525 . . . . . . 7  |-  ( z  e.  _V  ->  (
z  e.  |^|_ y  e.  I  X_ x  e.  I  if ( x  =  y ,  A ,  B )  <->  A. y  e.  I  z  e.  X_ x  e.  I  if ( x  =  y ,  A ,  B
) ) )
3833, 37ax-mp 5 . . . . . 6  |-  ( z  e.  |^|_ y  e.  I  X_ x  e.  I  if ( x  =  y ,  A ,  B
)  <->  A. y  e.  I 
z  e.  X_ x  e.  I  if (
x  =  y ,  A ,  B ) )
3933elixp 7915 . . . . . . 7  |-  ( z  e.  X_ x  e.  I  if ( x  =  y ,  A ,  B
)  <->  ( z  Fn  I  /\  A. x  e.  I  ( z `  x )  e.  if ( x  =  y ,  A ,  B ) ) )
4039ralbii 2980 . . . . . 6  |-  ( A. y  e.  I  z  e.  X_ x  e.  I  if ( x  =  y ,  A ,  B
)  <->  A. y  e.  I 
( z  Fn  I  /\  A. x  e.  I 
( z `  x
)  e.  if ( x  =  y ,  A ,  B ) ) )
4138, 40bitri 264 . . . . 5  |-  ( z  e.  |^|_ y  e.  I  X_ x  e.  I  if ( x  =  y ,  A ,  B
)  <->  A. y  e.  I 
( z  Fn  I  /\  A. x  e.  I 
( z `  x
)  e.  if ( x  =  y ,  A ,  B ) ) )
4236, 41anbi12i 733 . . . 4  |-  ( ( z  e.  X_ x  e.  I  B  /\  z  e.  |^|_ y  e.  I  X_ x  e.  I  if ( x  =  y ,  A ,  B
) )  <->  ( (
z  Fn  I  /\  A. x  e.  I  ( z `  x )  e.  B )  /\  A. y  e.  I  ( z  Fn  I  /\  A. x  e.  I  ( z `  x )  e.  if ( x  =  y ,  A ,  B ) ) ) )
4335, 42bitri 264 . . 3  |-  ( z  e.  ( X_ x  e.  I  B  i^i  |^|_ y  e.  I  X_ x  e.  I  if ( x  =  y ,  A ,  B ) )  <->  ( ( z  Fn  I  /\  A. x  e.  I  (
z `  x )  e.  B )  /\  A. y  e.  I  (
z  Fn  I  /\  A. x  e.  I  ( z `  x )  e.  if ( x  =  y ,  A ,  B ) ) ) )
4432, 34, 433bitr4g 303 . 2  |-  ( A. x  e.  I  A  C_  B  ->  ( z  e.  X_ x  e.  I  A 
<->  z  e.  ( X_ x  e.  I  B  i^i  |^|_ y  e.  I  X_ x  e.  I  if ( x  =  y ,  A ,  B
) ) ) )
4544eqrdv 2620 1  |-  ( A. x  e.  I  A  C_  B  ->  X_ x  e.  I  A  =  (
X_ x  e.  I  B  i^i  |^|_ y  e.  I  X_ x  e.  I  if ( x  =  y ,  A ,  B
) ) )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 196    /\ wa 384    = wceq 1483    e. wcel 1990   A.wral 2912   _Vcvv 3200    i^i cin 3573    C_ wss 3574   ifcif 4086   |^|_ciin 4521    Fn wfn 5883   ` cfv 5888   X_cixp 7908
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1722  ax-4 1737  ax-5 1839  ax-6 1888  ax-7 1935  ax-9 1999  ax-10 2019  ax-11 2034  ax-12 2047  ax-13 2246  ax-ext 2602
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3an 1039  df-tru 1486  df-ex 1705  df-nf 1710  df-sb 1881  df-clab 2609  df-cleq 2615  df-clel 2618  df-nfc 2753  df-ral 2917  df-rex 2918  df-rab 2921  df-v 3202  df-dif 3577  df-un 3579  df-in 3581  df-ss 3588  df-nul 3916  df-if 4087  df-sn 4178  df-pr 4180  df-op 4184  df-uni 4437  df-iin 4523  df-br 4654  df-opab 4713  df-rel 5121  df-cnv 5122  df-co 5123  df-dm 5124  df-iota 5851  df-fun 5890  df-fn 5891  df-fv 5896  df-ixp 7909
This theorem is referenced by:  ptcld  21416  kelac1  37633
  Copyright terms: Public domain W3C validator