- MultPosNatMonoid : Monoid (DPair Nat
IsSucc)
- Monoid, neutral = 1 
- MultPosNatSemi : Semigroup (DPair Nat
IsSucc)
- Semigroup using multiplication 
- PosNat : Type
- ℤ⁺: {1..}. 
- multPosNat : PosNat ->
PosNat ->
PosNat
- Multiply two PosNats 
- one : PosNat
- 1 
- p : (n : Nat) ->
{auto ok : IsSucc n} ->
PosNat
- Convert a Nat to a PosNat, using automatic proof search 
- plusNatPosNat : Nat ->
PosNat ->
PosNat
- Add a Nat to a positive Nat 
- 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
 
- plusPosNat : PosNat ->
PosNat ->
PosNat
- | Add two PosNats 
- succ : PosNat ->
PosNat
- The successor of a PosNat 
- timesPos : (n : Nat) ->
(k : Nat) ->
IsSucc n ->
IsSucc k ->
IsSucc (n *
k)
- The proof that one positive Nat times another is still positive