2. Multiplication
Definition2.1
Group: Core statements about multiplication on natural numbers. (2)
Used by 2
Lean status
- No associated Lean code or declarations.
We write a * b for the product of a and b.
One way to think about multiplication is as repeated addition, building on
Definition 1.1.
Theorem2.2
Group: Core statements about multiplication on natural numbers. (2)
Associated Lean declarations
-
multiplication_one_right[complete]
For every natural number n, multiplying by one on the right leaves it
unchanged: n * 1 = n.
This is the first sanity check for Definition 2.1.
Proof for Theorem 2.2
uses 0
Unfold the definition of multiplication and simplify.
Lean code for Theorem2.2
Associated Lean declarations
-
multiplication_one_right[complete]
Associated Lean declarations
-
multiplication_one_right[complete]
theorem multiplication_one_right (n : Nat) : n * 1 = n := n:Nat⊢ n * 1 = n
All goals completed! 🐙
Theorem2.3
Group: Core statements about multiplication on natural numbers. (2)
Associated Lean declarations
-
Nat.mul_assoc[complete]
For all natural numbers a, b, and c, multiplication is associative:
(a * b) * c = a * (b * c).
Lean code for Theorem2.3●1 theorem
Associated Lean declarations
-
Nat.mul_assoc[complete]
Associated Lean declarations
-
Nat.mul_assoc[complete]
-
theoremdefined in Init/Data/Nat/Basic.leancomplete
theorem Nat.mul_assoc (n m k : Nat) : n * m * k = n * (m * k)
theorem Nat.mul_assoc (n m k : Nat) : n * m * k = n * (m * k)
Proof for Theorem 2.3
uses 0
Lean already provides this theorem as Nat.mul_assoc, so this Blueprint entry
links to an existing declaration instead of restating the code locally.