Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Notice: We are no longer accepting new posts, but the forums will continue to be readable.

Topic: PROVE ALL NATURALS ARE NOT EVEN! ~ALL(X) p(X) <-> EXIST(X) ~p(X)
Replies: 2   Last Post: Feb 23, 2013 10:50 PM

 Messages: [ Previous | Next ]
 Graham Cooper Posts: 4,495 Registered: 5/20/10
PROVE ALL NATURALS ARE NOT EVEN! ~ALL(X) p(X) <-> EXIST(X) ~p(X)
Posted: Feb 20, 2013 5:51 AM

BLOCK PROLOG is really coming along!

This proof outline uses

~ALL(X) p(X) <-> EXIST(X) ~p(X)

Now I can (automatically) prove that not all numbers are even!

~ALL(n):N div(n,2,0)
-->
!(subset(nats,evens))

nat(0)
nat(s(X)) <- nats(X)

even(0)
even(s(s(X))) <- even(X)

odd(s(0))
odd(s(s(X))) <- odd(X)

!(odds) <- evens
!(evens) <- odds

**** DEFINE SETS AS PLURALS****
e(X,nats) <- nat(X)
e(X,evens) <- even(X)
e(X,odds) <- odd(X)

!(!(intersect(nats,!(evens))))
intersect(nats,odds)
e(X,nats) ^ e(X,odds)
nats(X) ^ odds(X)
nats(0) ^ odds(0) FAIL
nats(s(0)) ^ odds(s(0))

Basically it uses Set Reasoning instead of ALL(x) Logic
and finds the counterexample Number 1!

!(subset(S1,S2))
<->
intersect(S1,!(S2))

Herc
--
www.BLoCKPROLOG.com

Date Subject Author
2/20/13 Graham Cooper
2/22/13 Charlie-Boo
2/23/13 Graham Cooper