On Sunday, May 7, 2023 at 4:56:28 PM UTC-4, Mostowski Collapse wrote:
> Unfortunately Dans function in DC Proof are not what a
> mathematician would expect from functions. In set theory
> one can express undefinedness of f at x by:
>
> ~EXIST(y):(x,y) e f
>
Surely not EVERY mathematician. Oh, look, here is something by an actual mathematician. You may have heard of him.
"Definition 3.3.1 (Functions). Let X, Y be sets, and let P(x, y) be a property pertaining to an object x ∈ X and an object y ∈ Y, such that for every x ∈ X, there is exactly one y ∈ Y for which P(x, y) is true (this is sometimes known as the vertical line test). Then we define the function f : X → Y defined by P on the domain X and range Y to be the object which, given any input x ∈ X, assigns an output f(x) ∈ Y, defined to be the unique object f(x) for which P(x, f(x)) is true. Thus, for any x ∈ X and y ∈ Y, y = f(x) ⇐⇒ P(x, y) is true."
--Terence Tao, "Analysis I," p.49
The last sentence suggests that if either x ∈ X or y ∈ Y is false, then the truth value of y=f(x) is indeterminate.
Definition in DC Proof notation:
ALL(x):ALL(y):[Set(x) & Set(y) & ALL(c):[c in a => EXIST(d):[d in b & [P(c,d) & ALL(e):[e in b => [P(c,e) => e=d]]]]]
=> EXIST(f):ALL(c):[c in x => f(c) in y & P(c,f(c))]]
Theorem:
ALL(x):ALL(y):[Set(x) & Set(y) & ALL(c):[c in x => EXIST(d):[d in y & [P(c,d) & ALL(e):[e in y => [P(c,e) => e=d]]]]]
=> EXIST(f):ALL(a):ALL(b):[a in x & b in y => [b=f(a) <=> P(a,b)]]]
> How should we prove this incarnation of the drinker
> paradox with DC Proof. Its impossible!
[snip]
On the contrary, here is a more or less direct translation of Smullyan's predicate logic proof in to DC Proof format:
EXIST(a):U(a) => EXIST(a):[U(a) & [Drinker(a) => ALL(b):[U(b) => Drinker(b)]]]
http://www.dcproof.com/SmullyansDrinkerPrinciple.htm (28 lines)
And here is my own generalized set theoretic proof that is based on the non-existence of the universal set:
For any proposition Q, be it true or false, we have:
ALL(s):[Set(s) => EXIST(x):[x in s => Q]]
Proof:
http://www.dcproof.com/STGeneralizedDrinkersThm.htm (9 lines)
Let s = the set of all drinkers D, and Q = ALL(x):[Pub(x) => x in D] where Pub(x) means x is in the pub
Dan
Download my DC Proof 2.0 freeware at
http://www.dcproof.com
Visit my Math Blog at
http://www.dcproof.wordpress.com