INTRODUCTION
************
Using only the rules of logic, we formally derive a simple consequence of the definition of a partial function f of one variable mapping a subset of x to y.
We prove: ALL(a):[a e x => [f(a) e y <=> EXIST(b):[b e y & (a,b) e f]]]
Dan Christensen
2014-04-27
This proof was written with aid of the author's DC Proof 2.0 software available free at http://www.dcproof.com
AXIOMS
******
Although only PF3 is used in this proof, PF1 and PF2 are included for completeness.
PF1: f is a subset of the Cartesian product of sets x and y
1 ALL(a):ALL(b):[a e x & b e y => [(a,b) e f => a e x & b e y]]
Axiom
PF2: f is a partial function of one variable
2 ALL(a):ALL(b):ALL(c):[a e x & b e y & c e y => [(a,b) e f & (a,c) e f => b=c]]
Axiom
PF3: Definition of f(a)=b
3 ALL(a):ALL(b):[a e x & b e y => [f(a)=b <=> (a,b) e f]]
Axiom
PROOF
*****
Suppose...
4 t e x
Premise
'=>'
Prove: f(t) e y => EXIST(b):[b e y & (t,b) e f]
Suppose...
5 f(t) e y
Premise
Apply equivalence of noation
6 ALL(b):[t e x & b e y => [f(t)=b <=> (t,b) e f]]
U Spec, 3
7 t e x & f(t) e y => [f(t)=f(t) <=> (t,f(t)) e f]
U Spec, 6
8 t e x & f(t) e y
Join, 4, 5
9 f(t)=f(t) <=> (t,f(t)) e f
Detach, 7, 8
10 [f(t)=f(t) => (t,f(t)) e f]
& [(t,f(t)) e f => f(t)=f(t)]
Iff-And, 9
11 f(t)=f(t) => (t,f(t)) e f
Split, 10
12 (t,f(t)) e f => f(t)=f(t)
Split, 10
13 f(t)=f(t)
Reflex
14 (t,f(t)) e f
Detach, 11, 13
15 f(t) e y & (t,f(t)) e f
Join, 5, 14
16 EXIST(b):[b e y & (t,b) e f]
E Gen, 15
As Required:
17 f(t) e y => EXIST(b):[b e y & (t,b) e f]
4 Conclusion, 5
'<='
Prove: EXIST(b):[b e y & (t,b) e f] => f(t) e y
Suppose...
18 EXIST(b):[b e y & (t,b) e f]
Premise
19 u e y & (t,u) e f
E Spec, 18
20 u e y
Split, 19
21 (t,u) e f
Split, 19
Apply equivalence of notation
22 ALL(b):[t e x & b e y => [f(t)=b <=> (t,b) e f]]
U Spec, 3
23 t e x & u e y => [f(t)=u <=> (t,u) e f]
U Spec, 22
24 t e x & u e y
Join, 4, 20
25 f(t)=u <=> (t,u) e f
Detach, 23, 24
26 [f(t)=u => (t,u) e f] & [(t,u) e f => f(t)=u]
Iff-And, 25
27 f(t)=u => (t,u) e f
Split, 26
28 (t,u) e f => f(t)=u
Split, 26
29 f(t)=u
Detach, 28, 21
30 f(t) e y
Substitute, 29, 20
As Required:
31 EXIST(b):[b e y & (t,b) e f] => f(t) e y
4 Conclusion, 18
32 [f(t) e y => EXIST(b):[b e y & (t,b) e f]]
& [EXIST(b):[b e y & (t,b) e f] => f(t) e y]
Join, 17, 31
33 f(t) e y <=> EXIST(b):[b e y & (t,b) e f]
Iff-And, 32
As Required:
34 ALL(a):[a e x => [f(a) e y <=> EXIST(b):[b e y & (a,b) e f]]]
4 Conclusion, 4