Users' Mathboxes Mathbox for Thierry Arnoux < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  signswn0 Structured version   Unicode version

Theorem signswn0 27128
Description: The zero-skipping operation propagages non-zeros. (Contributed by Thierry Arnoux, 11-Oct-2018.)
Hypotheses
Ref Expression
signsw.p  |-  .+^  =  ( a  e.  { -u
1 ,  0 ,  1 } ,  b  e.  { -u 1 ,  0 ,  1 }  |->  if ( b  =  0 ,  a ,  b ) )
signsw.w  |-  W  =  { <. ( Base `  ndx ) ,  { -u 1 ,  0 ,  1 } >. ,  <. ( +g  `  ndx ) , 
.+^  >. }
Assertion
Ref Expression
signswn0  |-  ( ( ( X  e.  { -u 1 ,  0 ,  1 }  /\  Y  e.  { -u 1 ,  0 ,  1 } )  /\  X  =/=  0 )  ->  ( X  .+^  Y )  =/=  0 )
Distinct variable groups:    a, b, X    Y, a, b
Allowed substitution hints:    .+^ ( a, b)    W( a, b)

Proof of Theorem signswn0
StepHypRef Expression
1 signsw.p . . . 4  |-  .+^  =  ( a  e.  { -u
1 ,  0 ,  1 } ,  b  e.  { -u 1 ,  0 ,  1 }  |->  if ( b  =  0 ,  a ,  b ) )
21signspval 27120 . . 3  |-  ( ( X  e.  { -u
1 ,  0 ,  1 }  /\  Y  e.  { -u 1 ,  0 ,  1 } )  ->  ( X  .+^ 
Y )  =  if ( Y  =  0 ,  X ,  Y
) )
32adantr 465 . 2  |-  ( ( ( X  e.  { -u 1 ,  0 ,  1 }  /\  Y  e.  { -u 1 ,  0 ,  1 } )  /\  X  =/=  0 )  ->  ( X  .+^  Y )  =  if ( Y  =  0 ,  X ,  Y ) )
4 neeq1 2733 . . 3  |-  ( X  =  if ( Y  =  0 ,  X ,  Y )  ->  ( X  =/=  0  <->  if ( Y  =  0 ,  X ,  Y )  =/=  0 ) )
5 neeq1 2733 . . 3  |-  ( Y  =  if ( Y  =  0 ,  X ,  Y )  ->  ( Y  =/=  0  <->  if ( Y  =  0 ,  X ,  Y )  =/=  0 ) )
6 simplr 754 . . 3  |-  ( ( ( ( X  e. 
{ -u 1 ,  0 ,  1 }  /\  Y  e.  { -u 1 ,  0 ,  1 } )  /\  X  =/=  0 )  /\  Y  =  0 )  ->  X  =/=  0 )
7 simpr 461 . . . 4  |-  ( ( ( ( X  e. 
{ -u 1 ,  0 ,  1 }  /\  Y  e.  { -u 1 ,  0 ,  1 } )  /\  X  =/=  0 )  /\  -.  Y  =  0 )  ->  -.  Y  = 
0 )
87neneqad 2656 . . 3  |-  ( ( ( ( X  e. 
{ -u 1 ,  0 ,  1 }  /\  Y  e.  { -u 1 ,  0 ,  1 } )  /\  X  =/=  0 )  /\  -.  Y  =  0 )  ->  Y  =/=  0
)
94, 5, 6, 8ifbothda 3935 . 2  |-  ( ( ( X  e.  { -u 1 ,  0 ,  1 }  /\  Y  e.  { -u 1 ,  0 ,  1 } )  /\  X  =/=  0 )  ->  if ( Y  =  0 ,  X ,  Y )  =/=  0 )
103, 9eqnetrd 2745 1  |-  ( ( ( X  e.  { -u 1 ,  0 ,  1 }  /\  Y  e.  { -u 1 ,  0 ,  1 } )  /\  X  =/=  0 )  ->  ( X  .+^  Y )  =/=  0 )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    -> wi 4    /\ wa 369    = wceq 1370    e. wcel 1758    =/= wne 2648   ifcif 3902   {cpr 3990   {ctp 3992   <.cop 3994   ` cfv 5529  (class class class)co 6203    |-> cmpt2 6205   0cc0 9397   1c1 9398   -ucneg 9711   ndxcnx 14293   Basecbs 14296   +g cplusg 14361
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1592  ax-4 1603  ax-5 1671  ax-6 1710  ax-7 1730  ax-9 1762  ax-10 1777  ax-11 1782  ax-12 1794  ax-13 1955  ax-ext 2432  ax-sep 4524  ax-nul 4532  ax-pr 4642
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3an 967  df-tru 1373  df-ex 1588  df-nf 1591  df-sb 1703  df-eu 2266  df-mo 2267  df-clab 2440  df-cleq 2446  df-clel 2449  df-nfc 2604  df-ne 2650  df-ral 2804  df-rex 2805  df-rab 2808  df-v 3080  df-sbc 3295  df-dif 3442  df-un 3444  df-in 3446  df-ss 3453  df-nul 3749  df-if 3903  df-sn 3989  df-pr 3991  df-op 3995  df-uni 4203  df-br 4404  df-opab 4462  df-id 4747  df-xp 4957  df-rel 4958  df-cnv 4959  df-co 4960  df-dm 4961  df-iota 5492  df-fun 5531  df-fv 5537  df-ov 6206  df-oprab 6207  df-mpt2 6208
This theorem is referenced by:  signstfvneq0  27140
  Copyright terms: Public domain W3C validator