Search All of the Math Forum:

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

Topic: Peano-like Axioms for the Integers in DC Proof
Replies: 11   Last Post: Mar 3, 2013 6:13 PM

 Messages: [ Previous | Next ]
 Graham Cooper Posts: 4,061 Registered: 5/20/10
Re: Peano-like Axioms for the Integers in DC Proof
Posted: Feb 23, 2013 12:53 AM

>
> I don't know if they are anything new, but I have presented a set of axioms for the integers based on a clearly defined successor function. It differs considerably from the usual presentations that you see online. As such, I thought readers might be interested.
>
> Also, I'm not sure how these other sets of axioms were arrived at other than simply being as a wishlist of requirements for integer arithmetic that just seems to work.

And they DO work, as is!

nat(0).
nat(s(X)) :- nat(X).

even(0).
even(s(s(X))) :- even(X).

odd(s(0)).
odd(s(s(X))) :- odd(X).

e(A,nats) :- nat(A).
e(A,evens) :- even(A).
e(A,odds) :- odd(A).

insect(S1,S2) :- e(A,S1),e(A,S2).

?- insect(nats,evens).
?- insect(nats,odds).

This will return TRUE TRUE on any PROLOG machine.

******************************

?- e(A, nats) , e(A, evens)

will return

A = 0
A = s(s(0))
A = s(s(s(s(0))))
A = s(s(s(s(s(s(0))))))

*******************************

?- e(A,nats) , e(A,odds)

will return

A = s(0)
A = s(s(s(0)))
A = s(s(s(s(s(0)))))
A = s(s(s(s(s(s(s(0)))))))

NOTE: ?-insect( odds, evens ) will CRASH!

I need to get a TRACE working to see how Prolog solves simultaneous
equations..

[DAN]

My axioms, however, were justified by the  application of formal
axioms and rules of logic and set theory beginning with relatively
simple structures as I have described here. I show that that an
integer-like structure with its own a principle of mathematical
induction is actually embedded in such simple structures. Admit it,
Charlie, that's pretty cool!

The principle of mathematical induction for integers
14 ALL(p):[Set(p)
& ALL(a):[a @ p => a @ z]
& 0 @ p
& ALL(a):[a @ p => next(a) @ p]
& ALL(a):[a @ p => next'(a) @ p]
=> ALL(a):[a @ z => a @ p]]

[HERC]

So succ(X) is next(X)
and right is 1,2,3,4...
and left is -1,-2,-3,-4....

I like how you define the Domain z for the inductive predicate

& ALL(a):[a @ p => a @ z]
=> ALL(a):[a @ z => a @ p]]

Herc
--
www.BLoCKPROLOG.com

Date Subject Author
2/23/13 Graham Cooper
2/24/13 Graham Cooper
2/24/13 Graham Cooper
2/28/13 Graham Cooper
3/3/13 Graham Cooper
2/24/13 Graham Cooper