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

Theorem dcdifsnid 6408
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 3674 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 3674 . . 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 3549 . . . . . . 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 3249 . . . . . 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 520 . . . . . . 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 667 . . . . . . 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 3086 . . . . . 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 3248 . . . . . 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 519 . . . . . . 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 520 . . . . . . . 8  |-  ( ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A )  /\  z  e.  A
)  ->  B  e.  A )
17 equequ1 1689 . . . . . . . . . 10  |-  ( x  =  z  ->  (
x  =  y  <->  z  =  y ) )
1817dcbid 824 . . . . . . . . 9  |-  ( x  =  z  ->  (DECID  x  =  y  <-> DECID  z  =  y )
)
19 eqeq2 2150 . . . . . . . . . 10  |-  ( y  =  B  ->  (
z  =  y  <->  z  =  B ) )
2019dcbid 824 . . . . . . . . 9  |-  ( y  =  B  ->  (DECID  z  =  y  <-> DECID  z  =  B )
)
2118, 20rspc2v 2806 . . . . . . . 8  |-  ( ( z  e.  A  /\  B  e.  A )  ->  ( A. x  e.  A  A. y  e.  A DECID  x  =  y  -> DECID  z  =  B ) )
2215, 16, 21syl2anc 409 . . . . . . 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 822 . . . . . 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 788 . . . 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 3108 . 2  |-  ( ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  B  e.  A )  ->  A  C_  ( ( A  \  { B } )  u. 
{ B } ) )
292, 28eqssd 3119 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 698  DECID wdc 820    = wceq 1332    e. wcel 1481   A.wral 2417    \ cdif 3073    u. cun 3074    C_ wss 3076   {csn 3532
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 604  ax-in2 605  ax-io 699  ax-5 1424  ax-7 1425  ax-gen 1426  ax-ie1 1470  ax-ie2 1471  ax-8 1483  ax-10 1484  ax-11 1485  ax-i12 1486  ax-bndl 1487  ax-4 1488  ax-17 1507  ax-i9 1511  ax-ial 1515  ax-i5r 1516  ax-ext 2122
This theorem depends on definitions:  df-bi 116  df-dc 821  df-tru 1335  df-nf 1438  df-sb 1737  df-clab 2127  df-cleq 2133  df-clel 2136  df-nfc 2271  df-ral 2422  df-v 2691  df-dif 3078  df-un 3080  df-in 3082  df-ss 3089  df-sn 3538
This theorem is referenced by:  fnsnsplitdc  6409  nndifsnid  6411  fidifsnid  6773  undifdc  6820
  Copyright terms: Public domain W3C validator