import MyNat.Definition
import MyNat.Addition
import AdvancedAdditionWorld.Level1 -- succ_inj
import AdvancedAdditionWorld.Level10 -- zero_ne_succ
namespace MyNat
open MyNat

Advanced Addition World

Level 13: ne_succ_self

The last level in Advanced Addition World is the statement that n ≠ succ n.

Lemma

For any natural number n, we have n ≠ succ n.

lemma 
ne_succ_self: ∀ (n : MyNat), n ≠ succ n
ne_succ_self
(
n: MyNat
n
:
MyNat: Type
MyNat
) :
n: MyNat
n
succ: MyNat → MyNat
succ
n: MyNat
n
:=
n: MyNat

n succ n
n: MyNat

n succ n

zero
zero succ zero

Goals accomplished! 🐙
n: MyNat
ih: n succ n

succ
succ n succ (succ n)
n: MyNat
ih: n succ n
hs: succ n = succ (succ n)

succ
False
n: MyNat
ih: n succ n
hs: succ n = succ (succ n)

succ
n = succ n
n: MyNat
ih: n succ n
hs: succ n = succ (succ n)

succ.a
succ n = succ (succ n)

Goals accomplished! 🐙

Well that's a wrap on Advanced Addition World !

You can now move on to Advanced Multiplication World (after first doing Multiplication World, if you didn't do it already).