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

Theorem dcdifsnid 6590
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 3779 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 3779 . . 3  |-  ( B  e.  A  ->  (
( A  \  { B } )  u.  { B } )  C_  A
)
21adantl 277 . 2  |-  ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A )  ->  (
( A  \  { B } )  u.  { B } )  C_  A
)
3 simpr 110 . . . . . . 7  |-  ( ( ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A
)  /\  z  e.  A )  /\  z  =  B )  ->  z  =  B )
4 velsn 3650 . . . . . . 7  |-  ( z  e.  { B }  <->  z  =  B )
53, 4sylibr 134 . . . . . 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 3341 . . . . . 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 528 . . . . . . 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 110 . . . . . . . 8  |-  ( ( ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A
)  /\  z  e.  A )  /\  -.  z  =  B )  ->  -.  z  =  B )
109, 4sylnibr 679 . . . . . . 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 3176 . . . . . 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 3340 . . . . . 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 527 . . . . . . 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 110 . . . . . . . 8  |-  ( ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A )  /\  z  e.  A
)  ->  z  e.  A )
16 simplr 528 . . . . . . . 8  |-  ( ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A )  /\  z  e.  A
)  ->  B  e.  A )
17 equequ1 1735 . . . . . . . . . 10  |-  ( x  =  z  ->  (
x  =  y  <->  z  =  y ) )
1817dcbid 840 . . . . . . . . 9  |-  ( x  =  z  ->  (DECID  x  =  y  <-> DECID  z  =  y )
)
19 eqeq2 2215 . . . . . . . . . 10  |-  ( y  =  B  ->  (
z  =  y  <->  z  =  B ) )
2019dcbid 840 . . . . . . . . 9  |-  ( y  =  B  ->  (DECID  z  =  y  <-> DECID  z  =  B )
)
2118, 20rspc2v 2890 . . . . . . . 8  |-  ( ( z  e.  A  /\  B  e.  A )  ->  ( A. x  e.  A  A. y  e.  A DECID  x  =  y  -> DECID  z  =  B ) )
2215, 16, 21syl2anc 411 . . . . . . 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 838 . . . . . 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 800 . . . 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 115 . . 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 3199 . 2  |-  ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A )  ->  A  C_  ( ( A  \  { B } )  u. 
{ B } ) )
292, 28eqssd 3210 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 104    \/ wo 710  DECID wdc 836    = wceq 1373    e. wcel 2176   A.wral 2484    \ cdif 3163    u. cun 3164    C_ wss 3166   {csn 3633
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 615  ax-in2 616  ax-io 711  ax-5 1470  ax-7 1471  ax-gen 1472  ax-ie1 1516  ax-ie2 1517  ax-8 1527  ax-10 1528  ax-11 1529  ax-i12 1530  ax-bndl 1532  ax-4 1533  ax-17 1549  ax-i9 1553  ax-ial 1557  ax-i5r 1558  ax-ext 2187
This theorem depends on definitions:  df-bi 117  df-dc 837  df-tru 1376  df-nf 1484  df-sb 1786  df-clab 2192  df-cleq 2198  df-clel 2201  df-nfc 2337  df-ral 2489  df-v 2774  df-dif 3168  df-un 3170  df-in 3172  df-ss 3179  df-sn 3639
This theorem is referenced by:  fnsnsplitdc  6591  nndifsnid  6593  fidifsnid  6968  undifdc  7021
  Copyright terms: Public domain W3C validator