The Theory bin_rel
Parents
hol
Children
topology fun_rel
Constants
$mapsto.gif
'a rarr.gif 'b rarr.gif 'a cross.gif 'b
$cross.gif
'a SET rarr.gif 'b SET rarr.gif ('a cross.gif 'b) SET
$leftrightarrow.gif
'a SET rarr.gif 'b SET rarr.gif ('a cross.gif 'b) SET SET
Dom
('a cross.gif 'b) SET rarr.gif 'a SET
Ran
('a cross.gif 'b) SET rarr.gif 'b SET
Id
'a SET rarr.gif ('a cross.gif 'a) SET
Graph
('a rarr.gif 'b) rarr.gif ('a cross.gif 'b) SET
$⨟
('a rarr.gif 'b) rarr.gif ('b rarr.gif 'c) rarr.gif 'a rarr.gif 'c
$R_⨟_R
('a cross.gif 'b) SET rarr.gif ('b cross.gif 'c) SET rarr.gif ('a cross.gif 'c) SET
$R_o_R
('b cross.gif 'c) SET rarr.gif ('a cross.gif 'b) SET rarr.gif ('a cross.gif 'c) SET
$dr.gif
'a SET rarr.gif ('a cross.gif 'b) SET rarr.gif ('a cross.gif 'b) SET
$▷
('a cross.gif 'b) SET rarr.gif 'b SET rarr.gif ('a cross.gif 'b) SET
$⩤
'a SET rarr.gif ('a cross.gif 'b) SET rarr.gif ('a cross.gif 'b) SET
$⩥
('a cross.gif 'b) SET rarr.gif 'b SET rarr.gif ('a cross.gif 'b) SET
InvRel
('a cross.gif 'b) SET rarr.gif ('b cross.gif 'a) SET
$Image
('a cross.gif 'b) SET rarr.gif 'a SET rarr.gif 'b SET
Reflexive
('a cross.gif 'a) SET SET
Symmetric
('a cross.gif 'a) SET SET
Transitive
('a cross.gif 'a) SET SET
Injective
('a cross.gif 'b) SET SET
Surjective
'b SET rarr.gif ('a cross.gif 'b) SET SET
Total
'a SET rarr.gif ('a cross.gif 'b) SET SET
Functional
('a cross.gif 'b) SET SET
$⊕
('a cross.gif 'b) SET rarr.gif ('a cross.gif 'b) SET rarr.gif ('a cross.gif 'b) SET
$+
('a cross.gif 'a) SET rarr.gif ('a cross.gif 'a) SET
$*
('a cross.gif 'a) SET rarr.gif ('a cross.gif 'a) SET
RelCombine
('a cross.gif 'b) SET rarr.gif ('a cross.gif 'c) SET rarr.gif ('a cross.gif 'b cross.gif 'c) SET
Aliases
$R_⨟_R : ('b cross.gif 'a) SET rarr.gif ('a cross.gif 'c) SET rarr.gif ('b cross.gif 'c) SET
o
$R_o_R : ('a cross.gif 'c) SET rarr.gif ('b cross.gif 'a) SET rarr.gif ('b cross.gif 'c) SET
~
InvRel : ('b cross.gif 'a) SET rarr.gif ('a cross.gif 'b) SET
Type_Abbreviations
'a pset.gif
'a SET
'a leftrightarrow.gif 'b
('a cross.gif 'b) SET
Fixity
Right Infix 240:
R_o_R R_⨟_R leftrightarrow.gif dr.gif
Right Infix 280:
Image
Right Infix 300:
mapsto.gif
Postfix 300: * + ~
Definitions
mapsto.gif
turnstil.gif $mapsto.gif = $,
cross.gif
turnstil.gif forall.gif x ybull.gif (x cross.gif y) = {(v, w)|v isin.gif x and.gif w isin.gif y}
leftrightarrow.gif
turnstil.gif forall.gif x ybull.gif x leftrightarrow.gif y = pset.gif (x cross.gif y)
Dom
turnstil.gif forall.gif rbull.gif Dom r = {x|exist.gif ybull.gif (x, y) isin.gif r}
Ran
turnstil.gif forall.gif rbull.gif Ran r = {y|exist.gif xbull.gif (x, y) isin.gif r}
Id
turnstil.gif forall.gif sbull.gif Id s = {(x, y)|x = y and.gif x isin.gif s}
Graph
turnstil.gif forall.gif fbull.gif Graph f = {(x, y)|y = f x}
turnstil.gif forall.gif f gbull.gif f ⨟ g = g o f
R_⨟_R
turnstil.gif forall.gif r sbull.gif r ⨟ s = {(x, z)|exist.gif ybull.gif (x, y) isin.gif r and.gif (y, z) isin.gif s}
R_o_R
turnstil.gif forall.gif r sbull.gif r o s = s ⨟ r
dr.gif
turnstil.gif forall.gif a rbull.gif a dr.gif r = {(x, y)|x isin.gif a and.gif (x, y) isin.gif r}
turnstil.gif forall.gif a rbull.gif r ▷ a = {(x, y)|y isin.gif a and.gif (x, y) isin.gif r}
turnstil.gif forall.gif a rbull.gif a ⩤ r = {(x, y)|not.gif x isin.gif a and.gif (x, y) isin.gif r}
turnstil.gif forall.gif a rbull.gif r ⩥ a = {(x, y)|not.gif y isin.gif a and.gif (x, y) isin.gif r}
InvRel
turnstil.gif forall.gif rbull.gif r ~ = {(x, y)|(y, x) isin.gif r}
Image
turnstil.gif forall.gif r sbull.gif r Image s = {y|exist.gif xbull.gif x isin.gif s and.gif (x, y) isin.gif r}
Reflexive
turnstil.gif Reflexive = {r|forall.gif xbull.gif (x, x) isin.gif r}
Symmetric
turnstil.gif Symmetric = {r|forall.gif x ybull.gif (x, y) isin.gif r ruarr.gif (y, x) isin.gif r}
Transitive
turnstil.gif Transitive
fill= {r|forall.gif x y zbull.gif (x, y) isin.gif r and.gif (y, z) isin.gif r ruarr.gif (x, z) isin.gif r}
Injective
turnstil.gif Injective
fill= {r|forall.gif x y zbull.gif (x, z) isin.gif r and.gif (y, z) isin.gif r ruarr.gif x = y}
Surjective
turnstil.gif forall.gif sbull.gif Surjective s = {r|s = Ran r}
Total
turnstil.gif forall.gif sbull.gif Total s = {r|s = Dom r}
Functional
turnstil.gif Functional
fill= {r|forall.gif x w zbull.gif (x, w) isin.gif r and.gif (x, z) isin.gif r ruarr.gif w = z}
turnstil.gif forall.gif r sbull.gif r ⊕ s = (Dom s ⩤ r) cup.gif s
+
turnstil.gif forall.gif rbull.gif r + = lcap.gif {q|r sube.gif q and.gif q isin.gif Transitive}
*
turnstil.gif forall.gif r
fillbull.gif r *
fill= lcap.gif {q|r sube.gif q and.gif q isin.gif Reflexive and.gif q isin.gif Transitive}
RelCombine
turnstil.gif forall.gif f g
fillbull.gif RelCombine f g
fill= {(x, y, z)|(x, y) isin.gif f and.gif (x, z) isin.gif g}
Theorems
rel_isin.gif_in_clauses
turnstil.gif forall.gif a b x x1 y z r r1 r2 s t q f
fillbull.gif (x mapsto.gif y isin.gif r equiv.gif (x, y) isin.gif r)
filland.gif ((x, y) isin.gif (a cross.gif b) equiv.gif x isin.gif a and.gif y isin.gif b)
filland.gif (r isin.gif a leftrightarrow.gif b equiv.gif r sube.gif (a cross.gif b))
filland.gif (x isin.gif Dom r equiv.gif (exist.gif ybull.gif (x, y) isin.gif r))
filland.gif (y isin.gif Ran r equiv.gif (exist.gif xbull.gif (x, y) isin.gif r))
filland.gif ((x, x1) isin.gif Id a equiv.gif x = x1 and.gif x isin.gif a)
filland.gif ((x, y) isin.gif Graph f equiv.gif y = f x)
filland.gif ((x, z) isin.gif r ⨟ s
fillequiv.gif (exist.gif ybull.gif (x, y) isin.gif r and.gif (y, z) isin.gif s))
filland.gif ((x, z) isin.gif s o r equiv.gif (x, z) isin.gif r ⨟ s)
filland.gif ((x, y) isin.gif a dr.gif r equiv.gif x isin.gif a and.gif (x, y) isin.gif r)
filland.gif ((x, y) isin.gif r ▷ b equiv.gif y isin.gif b and.gif (x, y) isin.gif r)
filland.gif ((x, y) isin.gif a ⩤ r equiv.gif not.gif x isin.gif a and.gif (x, y) isin.gif r)
filland.gif ((x, y) isin.gif r ⩥ b equiv.gif not.gif y isin.gif b and.gif (x, y) isin.gif r)
filland.gif ((y, x) isin.gif r ~ equiv.gif (x, y) isin.gif r)
filland.gif (y isin.gif r Image a equiv.gif (exist.gif xbull.gif x isin.gif a and.gif (x, y) isin.gif r))
filland.gif (q isin.gif Reflexive equiv.gif (forall.gif xbull.gif (x, x) isin.gif q))
filland.gif (q isin.gif Symmetric
fillequiv.gif (forall.gif x1 x2bull.gif (x1, x2) isin.gif q ruarr.gif (x2, x1) isin.gif q))
filland.gif (q isin.gif Transitive
fillequiv.gif (forall.gif x1 x2 x3
fillbull.gif (x1, x2) isin.gif q and.gif (x2, x3) isin.gif q ruarr.gif (x1, x3) isin.gif q))
filland.gif (r isin.gif Injective
fillequiv.gif (forall.gif x1 x2 y
fillbull.gif (x1, y) isin.gif r and.gif (x2, y) isin.gif r ruarr.gif x1 = x2))
filland.gif (r isin.gif Surjective b
fillequiv.gif (forall.gif ybull.gif y isin.gif b equiv.gif (exist.gif xbull.gif (x, y) isin.gif r)))
filland.gif (r isin.gif Total a
fillequiv.gif (forall.gif xbull.gif x isin.gif a equiv.gif (exist.gif ybull.gif (x, y) isin.gif r)))
filland.gif (r isin.gif Functional
fillequiv.gif (forall.gif x y1 y2
fillbull.gif (x, y1) isin.gif r and.gif (x, y2) isin.gif r ruarr.gif y1 = y2))
filland.gif ((x, y) isin.gif r1 ⊕ r2
fillequiv.gif (x, y) isin.gif (Dom r2 ⩤ r1) cup.gif r2)
filland.gif ((x, y, z) isin.gif RelCombine r t
fillequiv.gif (x, y) isin.gif r and.gif (x, z) isin.gif t)
bin_rel_ext_clauses
turnstil.gif forall.gif r1 r2
fillbull.gif (r1 sub.gif r2
fillequiv.gif (forall.gif x ybull.gif (x, y) isin.gif r1 ruarr.gif (x, y) isin.gif r2)
filland.gif (exist.gif x ybull.gif not.gif (x, y) isin.gif r1 and.gif (x, y) isin.gif r2))
filland.gif (r1 sube.gif r2 equiv.gif (forall.gif x ybull.gif (x, y) isin.gif r1 ruarr.gif (x, y) isin.gif r2))
filland.gif (r1 = r2 equiv.gif (forall.gif x ybull.gif (x, y) isin.gif r1 equiv.gif (x, y) isin.gif r2))
inv_rel_thm
turnstil.gif forall.gif f a b
fillbull.gif (f ~ isin.gif Functional equiv.gif f isin.gif Injective)
filland.gif (f ~ isin.gif Injective equiv.gif f isin.gif Functional)
filland.gif (f ~ isin.gif Surjective a equiv.gif f isin.gif Total a)
filland.gif (f ~ isin.gif Total b equiv.gif f isin.gif Surjective b)
bin_rel_empty.gif_universe_thm
turnstil.gif forall.gif f g r0 r1 a b
fillbull.gif (Dom r0 = {} equiv.gif r0 = {})
filland.gif (Ran r0 = {} equiv.gif r0 = {})
filland.gif Dom {} = {}
filland.gif Ran {} = {}
filland.gif Dom Universe = Universe
filland.gif Ran Universe = Universe
filland.gif (Id r0 = {} equiv.gif r0 = {})
filland.gif Id {} = {}
filland.gif (r0 ~ = {} equiv.gif r0 = {})
filland.gif {} ~ = {}
filland.gif Universe ~ = Universe
filland.gif r0 ⨟ {} = {}
filland.gif {} ⨟ r0 = {}
filland.gif ({} = r0 ⨟ r1 equiv.gif Ran r0 cap.gif Dom r1 = {})
filland.gif (r0 ⨟ r1 = {} equiv.gif Ran r0 cap.gif Dom r1 = {})
filland.gif RelCombine r0 {} = {}
filland.gif RelCombine {} r0 = {}
filland.gif r0 Image {} = {}
filland.gif {} Image a = {}
filland.gif f ⊕ {} = f
filland.gif {} ⊕ f = f
filland.gif (f ⊕ g = {} equiv.gif f = {} and.gif g = {})
filland.gif (f = {} and.gif g = {} ruarr.gif f ⊕ g = {})
filland.gif (f ⊕ g = {} equiv.gif f = {} and.gif g = {})
filland.gif f ⊕ Universe = Universe
filland.gif Universe ⩤ r0 = {}
filland.gif a ⩤ {} = {}
filland.gif {} ⩤ r0 = r0
filland.gif Universe dr.gif r0 = r0
filland.gif a dr.gif {} = {}
filland.gif {} dr.gif r0 = {}
filland.gif r0 ⩥ Universe = {}
filland.gif {} ⩥ b = {}
filland.gif r0 ⩥ {} = r0
filland.gif r0 ▷ Universe = r0
filland.gif {} ▷ b = {}
filland.gif r0 ▷ {} = {}
bin_rel_insert_thm
turnstil.gif forall.gif a b r x xy y
fillbull.gif Dom (Insert (x, y) r) = Insert x (Dom r)
filland.gif Dom (Insert xy r) = Insert (Fst xy) (Dom r)
filland.gif Ran (Insert (x, y) r) = Insert y (Ran r)
filland.gif Ran (Insert xy r) = Insert (Snd xy) (Ran r)
filland.gif Id (Insert x a) = Insert (x, x) (Id a)
filland.gif Insert (x, y) r Image a
fill= r Image a cup.gif (if x isin.gif a then {y} else {})
filland.gif Insert (x, y) r ⩥ b
fill= (r ⩥ b) cup.gif (if not.gif y isin.gif b then {(x, y)} else {})
filland.gif Insert (x, y) r ▷ b
fill= (r ▷ b) cup.gif (if y isin.gif b then {(x, y)} else {})
filland.gif a ⩤ Insert (x, y) r
fill= (a ⩤ r) cup.gif (if not.gif x isin.gif a then {(x, y)} else {})
filland.gif a dr.gif Insert (x, y) r
fill= (a dr.gif r) cup.gif (if x isin.gif a then {(x, y)} else {})
filland.gif Insert (x, y) r ~ = Insert (y, x) (r ~)

up quick index

V