You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
lean4game/server/nng/NNG/Levels/AdvProposition/Level_8.lean

54 lines
1.1 KiB
Plaintext

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

import NNG.Metadata
import NNG.MyNat.Addition
Game "NNG"
World "AdvProposition"
Level 8
Title "`and_or_distrib_left`"
open MyNat
Introduction
"
We know that $x(y+z)=xy+xz$ for numbers, and this
is called distributivity of multiplication over addition.
The same is true for `∧` and `` -- in fact `∧` distributes
over `` and `` distributes over `∧`. Let's prove one of these.
"
Statement --and_or_distrib_left
"If $P$. $Q$ and $R$ are true/false statements, then
$$P\\land(Q\\lor R)\\iff(P\\land Q)\\lor (P\\land R).$$ "
(P Q R : Prop) : P ∧ (Q R) ↔ (P ∧ Q) (P ∧ R) := by
constructor
intro h
rcases h with ⟨hp, hqr⟩
rcases hqr with q | r
left
constructor
exact hp
exact q
right
constructor
exact hp
exact r
intro h
rcases h with hpq | hpr
rcases hpq with ⟨p, q⟩
constructor
exact p
left
exact q
rcases hpr with ⟨hp, hr⟩
constructor
exact hp
right
exact hr
Conclusion
"
You already know enough to embark on advanced addition world. But the next two levels comprise
just a couple more things.
"