Я предлагаю короткое и простое определение целых чисел в рамках формальной математики.
Вначале договоримся о следующем синтаксисе:
1)Введение нового объекта:
идентификатор "
название"
(вообще говоря необходимости в названии нет);
2)Введение нового условия:
условие(в записи условия могут использоваться булевы операции, кванторы общности и существования, а также имена переменных)
3)
Все функции (кроме логических операций) записываются в общем виде

, а все отношения (и логические операции) записываются привычным способом

Система задается одновременным выполнением всех записанных в ней условий над всеми описанными в ней объектами. Под объектом понимается что угодно. Не делается никаких различий между множествами, операциями, отношениями, числами, матрицами, фигурами и т.п. Считается что любой объект может выступать в качестве функции и любой в качества аргумента. Логические операции и отношение принадлежность (

) считаются уже определёнными.
Итак, опишем целые числа.
Целые числа
"
целые числа"

"
ноль"


"
штрих"

"
анер"


"
больше"



"
равно"

ВсёТо же самое по русски:
Вводится объект "целые числа"
Вводится объект "ноль"
Ноль принадлежит целым числам
Водится объект "штрих" (да эта операция будет использоваться традиционным образом (

), но для этого мы не нуждаемся ни в каких дополнительных определений. Все свойства всех описанных операций следуют из названных далее условий)
Вводится объект "анер" (по смыслу противоположен штриху)
Для любого объекта принадлежащего "целым числам" (далее просто целое число) и штрих и анер от него являются целыми числами
Вводится объект "больше"
Штрих от любого целого числа больше самого числа, а само число больше своего анера
"Больше" обладает транзитивностью
Вводится объект "равно"
Каждое целое число равно само себе
Для каждой пары целых чисел одно не равно другому тогда и только тогда, когда либо первое больше второго, либо второе большего первого.
Если всё верно и данный набор условий действительно полноценно описывает целые числа, тогда этот способ намного лучше (элегантней) расширения натуральных чисел, которые надо сначала описать через аксиомы Пеано.