Purely Functional Lazy Non-deterministic Programming 📜 On the Meanings of the Logical Constants and the Justifications of the Logical Laws