ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  dcdifsnid Unicode version

Theorem dcdifsnid 6400
Description: If we remove a single element from a set with decidable equality then put it back in, we end up with the original set. This strengthens difsnss 3666 from subset to equality but the proof relies on equality being decidable. (Contributed by Jim Kingdon, 17-Jun-2022.)
Assertion
Ref Expression
dcdifsnid  |-  ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A )  ->  (
( A  \  { B } )  u.  { B } )  =  A )
Distinct variable groups:    x, A, y   
x, B, y

Proof of Theorem dcdifsnid
Dummy variable  z is distinct from all other variables.
StepHypRef Expression
1 difsnss 3666 . . 3  |-  ( B  e.  A  ->  (
( A  \  { B } )  u.  { B } )  C_  A
)
21adantl 275 . 2  |-  ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A )  ->  (
( A  \  { B } )  u.  { B } )  C_  A
)
3 simpr 109 . . . . . . 7  |-  ( ( ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A
)  /\  z  e.  A )  /\  z  =  B )  ->  z  =  B )
4 velsn 3544 . . . . . . 7  |-  ( z  e.  { B }  <->  z  =  B )
53, 4sylibr 133 . . . . . 6  |-  ( ( ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A
)  /\  z  e.  A )  /\  z  =  B )  ->  z  e.  { B } )
6 elun2 3244 . . . . . 6  |-  ( z  e.  { B }  ->  z  e.  ( ( A  \  { B } )  u.  { B } ) )
75, 6syl 14 . . . . 5  |-  ( ( ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A
)  /\  z  e.  A )  /\  z  =  B )  ->  z  e.  ( ( A  \  { B } )  u. 
{ B } ) )
8 simplr 519 . . . . . . 7  |-  ( ( ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A
)  /\  z  e.  A )  /\  -.  z  =  B )  ->  z  e.  A )
9 simpr 109 . . . . . . . 8  |-  ( ( ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A
)  /\  z  e.  A )  /\  -.  z  =  B )  ->  -.  z  =  B )
109, 4sylnibr 666 . . . . . . 7  |-  ( ( ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A
)  /\  z  e.  A )  /\  -.  z  =  B )  ->  -.  z  e.  { B } )
118, 10eldifd 3081 . . . . . 6  |-  ( ( ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A
)  /\  z  e.  A )  /\  -.  z  =  B )  ->  z  e.  ( A 
\  { B }
) )
12 elun1 3243 . . . . . 6  |-  ( z  e.  ( A  \  { B } )  -> 
z  e.  ( ( A  \  { B } )  u.  { B } ) )
1311, 12syl 14 . . . . 5  |-  ( ( ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A
)  /\  z  e.  A )  /\  -.  z  =  B )  ->  z  e.  ( ( A  \  { B } )  u.  { B } ) )
14 simpll 518 . . . . . . 7  |-  ( ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A )  /\  z  e.  A
)  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y
)
15 simpr 109 . . . . . . . 8  |-  ( ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A )  /\  z  e.  A
)  ->  z  e.  A )
16 simplr 519 . . . . . . . 8  |-  ( ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A )  /\  z  e.  A
)  ->  B  e.  A )
17 equequ1 1688 . . . . . . . . . 10  |-  ( x  =  z  ->  (
x  =  y  <->  z  =  y ) )
1817dcbid 823 . . . . . . . . 9  |-  ( x  =  z  ->  (DECID  x  =  y  <-> DECID  z  =  y )
)
19 eqeq2 2149 . . . . . . . . . 10  |-  ( y  =  B  ->  (
z  =  y  <->  z  =  B ) )
2019dcbid 823 . . . . . . . . 9  |-  ( y  =  B  ->  (DECID  z  =  y  <-> DECID  z  =  B )
)
2118, 20rspc2v 2802 . . . . . . . 8  |-  ( ( z  e.  A  /\  B  e.  A )  ->  ( A. x  e.  A  A. y  e.  A DECID  x  =  y  -> DECID  z  =  B ) )
2215, 16, 21syl2anc 408 . . . . . . 7  |-  ( ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A )  /\  z  e.  A
)  ->  ( A. x  e.  A  A. y  e.  A DECID  x  =  y  -> DECID 
z  =  B ) )
2314, 22mpd 13 . . . . . 6  |-  ( ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A )  /\  z  e.  A
)  -> DECID  z  =  B
)
24 exmiddc 821 . . . . . 6  |-  (DECID  z  =  B  ->  ( z  =  B  \/  -.  z  =  B )
)
2523, 24syl 14 . . . . 5  |-  ( ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A )  /\  z  e.  A
)  ->  ( z  =  B  \/  -.  z  =  B )
)
267, 13, 25mpjaodan 787 . . . 4  |-  ( ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A )  /\  z  e.  A
)  ->  z  e.  ( ( A  \  { B } )  u. 
{ B } ) )
2726ex 114 . . 3  |-  ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A )  ->  (
z  e.  A  -> 
z  e.  ( ( A  \  { B } )  u.  { B } ) ) )
2827ssrdv 3103 . 2  |-  ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A )  ->  A  C_  ( ( A  \  { B } )  u. 
{ B } ) )
292, 28eqssd 3114 1  |-  ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A )  ->  (
( A  \  { B } )  u.  { B } )  =  A )
Colors of variables: wff set class
Syntax hints:   -. wn 3    -> wi 4    /\ wa 103    \/ wo 697  DECID wdc 819    = wceq 1331    e. wcel 1480   A.wral 2416    \ cdif 3068    u. cun 3069    C_ wss 3071   {csn 3527
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 105  ax-ia2 106  ax-ia3 107  ax-in1 603  ax-in2 604  ax-io 698  ax-5 1423  ax-7 1424  ax-gen 1425  ax-ie1 1469  ax-ie2 1470  ax-8 1482  ax-10 1483  ax-11 1484  ax-i12 1485  ax-bndl 1486  ax-4 1487  ax-17 1506  ax-i9 1510  ax-ial 1514  ax-i5r 1515  ax-ext 2121
This theorem depends on definitions:  df-bi 116  df-dc 820  df-tru 1334  df-nf 1437  df-sb 1736  df-clab 2126  df-cleq 2132  df-clel 2135  df-nfc 2270  df-ral 2421  df-v 2688  df-dif 3073  df-un 3075  df-in 3077  df-ss 3084  df-sn 3533
This theorem is referenced by:  fnsnsplitdc  6401  nndifsnid  6403  fidifsnid  6765  undifdc  6812
  Copyright terms: Public domain W3C validator