- timesPos : (n : Nat) ->
(k : Nat) ->
IsSucc n ->
IsSucc k ->
IsSucc (n *
k)
The proof that one positive Nat times another is still positive
- succ : PosNat ->
PosNat
The successor of a PosNat
- plusPosNat : PosNat ->
PosNat ->
PosNat
| Add two PosNats
- plusPos : (n : Nat) ->
(k : Nat) ->
IsSucc n ->
IsSucc (n +
k)
A proof that the addition of a natural number to a natural number that is
already positive doesn't make a difference
- plusNatPosNat : Nat ->
PosNat ->
PosNat
Add a Nat to a positive Nat
- p : (n : Nat) ->
{auto ok : IsSucc n} ->
PosNat
Convert a Nat to a PosNat, using automatic proof search
- one : PosNat
1
- multPosNat : PosNat ->
PosNat ->
PosNat
Multiply two PosNats
- PosNat : Type
ℤ⁺: {1..}.
- MultPosNatSemi : Semigroup (DPair Nat
IsSucc)
Semigroup using multiplication
- MultPosNatMonoid : Monoid (DPair Nat
IsSucc)
Monoid, neutral = 1