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

Theorem funun 5620
Description: The union of functions with disjoint domains is a function. Theorem 4.6 of [Monk1] p. 43. (Contributed by NM, 12-Aug-1994.)
Assertion
Ref Expression
funun  |-  ( ( ( Fun  F  /\  Fun  G )  /\  ( dom  F  i^i  dom  G
)  =  (/) )  ->  Fun  ( F  u.  G
) )

Proof of Theorem funun
Dummy variables  x  y  z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 funrel 5595 . . . . 5  |-  ( Fun 
F  ->  Rel  F )
2 funrel 5595 . . . . 5  |-  ( Fun 
G  ->  Rel  G )
31, 2anim12i 566 . . . 4  |-  ( ( Fun  F  /\  Fun  G )  ->  ( Rel  F  /\  Rel  G ) )
4 relun 5109 . . . 4  |-  ( Rel  ( F  u.  G
)  <->  ( Rel  F  /\  Rel  G ) )
53, 4sylibr 212 . . 3  |-  ( ( Fun  F  /\  Fun  G )  ->  Rel  ( F  u.  G ) )
65adantr 465 . 2  |-  ( ( ( Fun  F  /\  Fun  G )  /\  ( dom  F  i^i  dom  G
)  =  (/) )  ->  Rel  ( F  u.  G
) )
7 elun 3630 . . . . . . . 8  |-  ( <.
x ,  y >.  e.  ( F  u.  G
)  <->  ( <. x ,  y >.  e.  F  \/  <. x ,  y
>.  e.  G ) )
8 elun 3630 . . . . . . . 8  |-  ( <.
x ,  z >.  e.  ( F  u.  G
)  <->  ( <. x ,  z >.  e.  F  \/  <. x ,  z
>.  e.  G ) )
97, 8anbi12i 697 . . . . . . 7  |-  ( (
<. x ,  y >.  e.  ( F  u.  G
)  /\  <. x ,  z >.  e.  ( F  u.  G )
)  <->  ( ( <.
x ,  y >.  e.  F  \/  <. x ,  y >.  e.  G
)  /\  ( <. x ,  z >.  e.  F  \/  <. x ,  z
>.  e.  G ) ) )
10 anddi 870 . . . . . . 7  |-  ( ( ( <. x ,  y
>.  e.  F  \/  <. x ,  y >.  e.  G
)  /\  ( <. x ,  z >.  e.  F  \/  <. x ,  z
>.  e.  G ) )  <-> 
( ( ( <.
x ,  y >.  e.  F  /\  <. x ,  z >.  e.  F
)  \/  ( <.
x ,  y >.  e.  F  /\  <. x ,  z >.  e.  G
) )  \/  (
( <. x ,  y
>.  e.  G  /\  <. x ,  z >.  e.  F
)  \/  ( <.
x ,  y >.  e.  G  /\  <. x ,  z >.  e.  G
) ) ) )
119, 10bitri 249 . . . . . 6  |-  ( (
<. x ,  y >.  e.  ( F  u.  G
)  /\  <. x ,  z >.  e.  ( F  u.  G )
)  <->  ( ( (
<. x ,  y >.  e.  F  /\  <. x ,  z >.  e.  F
)  \/  ( <.
x ,  y >.  e.  F  /\  <. x ,  z >.  e.  G
) )  \/  (
( <. x ,  y
>.  e.  G  /\  <. x ,  z >.  e.  F
)  \/  ( <.
x ,  y >.  e.  G  /\  <. x ,  z >.  e.  G
) ) ) )
12 disj1 3855 . . . . . . . . . . . . 13  |-  ( ( dom  F  i^i  dom  G )  =  (/)  <->  A. x
( x  e.  dom  F  ->  -.  x  e.  dom  G ) )
1312biimpi 194 . . . . . . . . . . . 12  |-  ( ( dom  F  i^i  dom  G )  =  (/)  ->  A. x
( x  e.  dom  F  ->  -.  x  e.  dom  G ) )
141319.21bi 1855 . . . . . . . . . . 11  |-  ( ( dom  F  i^i  dom  G )  =  (/)  ->  (
x  e.  dom  F  ->  -.  x  e.  dom  G ) )
15 imnan 422 . . . . . . . . . . 11  |-  ( ( x  e.  dom  F  ->  -.  x  e.  dom  G )  <->  -.  ( x  e.  dom  F  /\  x  e.  dom  G ) )
1614, 15sylib 196 . . . . . . . . . 10  |-  ( ( dom  F  i^i  dom  G )  =  (/)  ->  -.  ( x  e.  dom  F  /\  x  e.  dom  G ) )
17 vex 3098 . . . . . . . . . . . 12  |-  x  e. 
_V
18 vex 3098 . . . . . . . . . . . 12  |-  y  e. 
_V
1917, 18opeldm 5196 . . . . . . . . . . 11  |-  ( <.
x ,  y >.  e.  F  ->  x  e. 
dom  F )
20 vex 3098 . . . . . . . . . . . 12  |-  z  e. 
_V
2117, 20opeldm 5196 . . . . . . . . . . 11  |-  ( <.
x ,  z >.  e.  G  ->  x  e. 
dom  G )
2219, 21anim12i 566 . . . . . . . . . 10  |-  ( (
<. x ,  y >.  e.  F  /\  <. x ,  z >.  e.  G
)  ->  ( x  e.  dom  F  /\  x  e.  dom  G ) )
2316, 22nsyl 121 . . . . . . . . 9  |-  ( ( dom  F  i^i  dom  G )  =  (/)  ->  -.  ( <. x ,  y
>.  e.  F  /\  <. x ,  z >.  e.  G
) )
24 orel2 383 . . . . . . . . 9  |-  ( -.  ( <. x ,  y
>.  e.  F  /\  <. x ,  z >.  e.  G
)  ->  ( (
( <. x ,  y
>.  e.  F  /\  <. x ,  z >.  e.  F
)  \/  ( <.
x ,  y >.  e.  F  /\  <. x ,  z >.  e.  G
) )  ->  ( <. x ,  y >.  e.  F  /\  <. x ,  z >.  e.  F
) ) )
2523, 24syl 16 . . . . . . . 8  |-  ( ( dom  F  i^i  dom  G )  =  (/)  ->  (
( ( <. x ,  y >.  e.  F  /\  <. x ,  z
>.  e.  F )  \/  ( <. x ,  y
>.  e.  F  /\  <. x ,  z >.  e.  G
) )  ->  ( <. x ,  y >.  e.  F  /\  <. x ,  z >.  e.  F
) ) )
2614con2d 115 . . . . . . . . . . 11  |-  ( ( dom  F  i^i  dom  G )  =  (/)  ->  (
x  e.  dom  G  ->  -.  x  e.  dom  F ) )
27 imnan 422 . . . . . . . . . . 11  |-  ( ( x  e.  dom  G  ->  -.  x  e.  dom  F )  <->  -.  ( x  e.  dom  G  /\  x  e.  dom  F ) )
2826, 27sylib 196 . . . . . . . . . 10  |-  ( ( dom  F  i^i  dom  G )  =  (/)  ->  -.  ( x  e.  dom  G  /\  x  e.  dom  F ) )
2917, 18opeldm 5196 . . . . . . . . . . 11  |-  ( <.
x ,  y >.  e.  G  ->  x  e. 
dom  G )
3017, 20opeldm 5196 . . . . . . . . . . 11  |-  ( <.
x ,  z >.  e.  F  ->  x  e. 
dom  F )
3129, 30anim12i 566 . . . . . . . . . 10  |-  ( (
<. x ,  y >.  e.  G  /\  <. x ,  z >.  e.  F
)  ->  ( x  e.  dom  G  /\  x  e.  dom  F ) )
3228, 31nsyl 121 . . . . . . . . 9  |-  ( ( dom  F  i^i  dom  G )  =  (/)  ->  -.  ( <. x ,  y
>.  e.  G  /\  <. x ,  z >.  e.  F
) )
33 orel1 382 . . . . . . . . 9  |-  ( -.  ( <. x ,  y
>.  e.  G  /\  <. x ,  z >.  e.  F
)  ->  ( (
( <. x ,  y
>.  e.  G  /\  <. x ,  z >.  e.  F
)  \/  ( <.
x ,  y >.  e.  G  /\  <. x ,  z >.  e.  G
) )  ->  ( <. x ,  y >.  e.  G  /\  <. x ,  z >.  e.  G
) ) )
3432, 33syl 16 . . . . . . . 8  |-  ( ( dom  F  i^i  dom  G )  =  (/)  ->  (
( ( <. x ,  y >.  e.  G  /\  <. x ,  z
>.  e.  F )  \/  ( <. x ,  y
>.  e.  G  /\  <. x ,  z >.  e.  G
) )  ->  ( <. x ,  y >.  e.  G  /\  <. x ,  z >.  e.  G
) ) )
3525, 34orim12d 838 . . . . . . 7  |-  ( ( dom  F  i^i  dom  G )  =  (/)  ->  (
( ( ( <.
x ,  y >.  e.  F  /\  <. x ,  z >.  e.  F
)  \/  ( <.
x ,  y >.  e.  F  /\  <. x ,  z >.  e.  G
) )  \/  (
( <. x ,  y
>.  e.  G  /\  <. x ,  z >.  e.  F
)  \/  ( <.
x ,  y >.  e.  G  /\  <. x ,  z >.  e.  G
) ) )  -> 
( ( <. x ,  y >.  e.  F  /\  <. x ,  z
>.  e.  F )  \/  ( <. x ,  y
>.  e.  G  /\  <. x ,  z >.  e.  G
) ) ) )
3635adantl 466 . . . . . 6  |-  ( ( ( Fun  F  /\  Fun  G )  /\  ( dom  F  i^i  dom  G
)  =  (/) )  -> 
( ( ( (
<. x ,  y >.  e.  F  /\  <. x ,  z >.  e.  F
)  \/  ( <.
x ,  y >.  e.  F  /\  <. x ,  z >.  e.  G
) )  \/  (
( <. x ,  y
>.  e.  G  /\  <. x ,  z >.  e.  F
)  \/  ( <.
x ,  y >.  e.  G  /\  <. x ,  z >.  e.  G
) ) )  -> 
( ( <. x ,  y >.  e.  F  /\  <. x ,  z
>.  e.  F )  \/  ( <. x ,  y
>.  e.  G  /\  <. x ,  z >.  e.  G
) ) ) )
3711, 36syl5bi 217 . . . . 5  |-  ( ( ( Fun  F  /\  Fun  G )  /\  ( dom  F  i^i  dom  G
)  =  (/) )  -> 
( ( <. x ,  y >.  e.  ( F  u.  G )  /\  <. x ,  z
>.  e.  ( F  u.  G ) )  -> 
( ( <. x ,  y >.  e.  F  /\  <. x ,  z
>.  e.  F )  \/  ( <. x ,  y
>.  e.  G  /\  <. x ,  z >.  e.  G
) ) ) )
38 dffun4 5590 . . . . . . . . . 10  |-  ( Fun 
F  <->  ( Rel  F  /\  A. x A. y A. z ( ( <.
x ,  y >.  e.  F  /\  <. x ,  z >.  e.  F
)  ->  y  =  z ) ) )
3938simprbi 464 . . . . . . . . 9  |-  ( Fun 
F  ->  A. x A. y A. z ( ( <. x ,  y
>.  e.  F  /\  <. x ,  z >.  e.  F
)  ->  y  =  z ) )
403919.21bi 1855 . . . . . . . 8  |-  ( Fun 
F  ->  A. y A. z ( ( <.
x ,  y >.  e.  F  /\  <. x ,  z >.  e.  F
)  ->  y  =  z ) )
414019.21bbi 1856 . . . . . . 7  |-  ( Fun 
F  ->  ( ( <. x ,  y >.  e.  F  /\  <. x ,  z >.  e.  F
)  ->  y  =  z ) )
42 dffun4 5590 . . . . . . . . . 10  |-  ( Fun 
G  <->  ( Rel  G  /\  A. x A. y A. z ( ( <.
x ,  y >.  e.  G  /\  <. x ,  z >.  e.  G
)  ->  y  =  z ) ) )
4342simprbi 464 . . . . . . . . 9  |-  ( Fun 
G  ->  A. x A. y A. z ( ( <. x ,  y
>.  e.  G  /\  <. x ,  z >.  e.  G
)  ->  y  =  z ) )
444319.21bi 1855 . . . . . . . 8  |-  ( Fun 
G  ->  A. y A. z ( ( <.
x ,  y >.  e.  G  /\  <. x ,  z >.  e.  G
)  ->  y  =  z ) )
454419.21bbi 1856 . . . . . . 7  |-  ( Fun 
G  ->  ( ( <. x ,  y >.  e.  G  /\  <. x ,  z >.  e.  G
)  ->  y  =  z ) )
4641, 45jaao 509 . . . . . 6  |-  ( ( Fun  F  /\  Fun  G )  ->  ( (
( <. x ,  y
>.  e.  F  /\  <. x ,  z >.  e.  F
)  \/  ( <.
x ,  y >.  e.  G  /\  <. x ,  z >.  e.  G
) )  ->  y  =  z ) )
4746adantr 465 . . . . 5  |-  ( ( ( Fun  F  /\  Fun  G )  /\  ( dom  F  i^i  dom  G
)  =  (/) )  -> 
( ( ( <.
x ,  y >.  e.  F  /\  <. x ,  z >.  e.  F
)  \/  ( <.
x ,  y >.  e.  G  /\  <. x ,  z >.  e.  G
) )  ->  y  =  z ) )
4837, 47syld 44 . . . 4  |-  ( ( ( Fun  F  /\  Fun  G )  /\  ( dom  F  i^i  dom  G
)  =  (/) )  -> 
( ( <. x ,  y >.  e.  ( F  u.  G )  /\  <. x ,  z
>.  e.  ( F  u.  G ) )  -> 
y  =  z ) )
4948alrimiv 1706 . . 3  |-  ( ( ( Fun  F  /\  Fun  G )  /\  ( dom  F  i^i  dom  G
)  =  (/) )  ->  A. z ( ( <.
x ,  y >.  e.  ( F  u.  G
)  /\  <. x ,  z >.  e.  ( F  u.  G )
)  ->  y  =  z ) )
5049alrimivv 1707 . 2  |-  ( ( ( Fun  F  /\  Fun  G )  /\  ( dom  F  i^i  dom  G
)  =  (/) )  ->  A. x A. y A. z ( ( <.
x ,  y >.  e.  ( F  u.  G
)  /\  <. x ,  z >.  e.  ( F  u.  G )
)  ->  y  =  z ) )
51 dffun4 5590 . 2  |-  ( Fun  ( F  u.  G
)  <->  ( Rel  ( F  u.  G )  /\  A. x A. y A. z ( ( <.
x ,  y >.  e.  ( F  u.  G
)  /\  <. x ,  z >.  e.  ( F  u.  G )
)  ->  y  =  z ) ) )
526, 50, 51sylanbrc 664 1  |-  ( ( ( Fun  F  /\  Fun  G )  /\  ( dom  F  i^i  dom  G
)  =  (/) )  ->  Fun  ( F  u.  G
) )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    -> wi 4    \/ wo 368    /\ wa 369   A.wal 1381    = wceq 1383    e. wcel 1804    u. cun 3459    i^i cin 3460   (/)c0 3770   <.cop 4020   dom cdm 4989   Rel wrel 4994   Fun wfun 5572
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1605  ax-4 1618  ax-5 1691  ax-6 1734  ax-7 1776  ax-9 1808  ax-10 1823  ax-11 1828  ax-12 1840  ax-13 1985  ax-ext 2421  ax-sep 4558  ax-nul 4566  ax-pr 4676
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3an 976  df-tru 1386  df-ex 1600  df-nf 1604  df-sb 1727  df-eu 2272  df-mo 2273  df-clab 2429  df-cleq 2435  df-clel 2438  df-nfc 2593  df-ne 2640  df-ral 2798  df-rab 2802  df-v 3097  df-dif 3464  df-un 3466  df-in 3468  df-ss 3475  df-nul 3771  df-if 3927  df-sn 4015  df-pr 4017  df-op 4021  df-br 4438  df-opab 4496  df-id 4785  df-rel 4996  df-cnv 4997  df-co 4998  df-dm 4999  df-fun 5580
This theorem is referenced by:  funprg  5627  funtpg  5628  funtp  5630  fnun  5677  fvun  5928  tfrlem10  7058  sbthlem7  7635  sbthlem8  7636  fodomr  7670  funsnfsupp  7855  axdc3lem4  8836  strlemor1  14601  strleun  14604  wfrlem13  29330  bnj1421  33831
  Copyright terms: Public domain W3C validator