How not to teach logic:
1. A proposition is something that has a truth value.
2. Axioms are the simplest statements which are true.
3. Define logical connectives in terms of truth tables.
4. A proof is a sequence of reasoning steps.
5. Pretend there are no variable contexts.
I still think about the time a cs person tried to start a talk in a roomful of mathematicians with "what do you think 'security' means" and there was an awkward pause and paul taylor was like "sir, we're mathematicians, we've known for centuries that security means proof 🤨"
This can only end three ways:
1. Formal verification
2. Miraculously aligned-by-default agents that fix bugs are assigned enough compute resources to fix bugs faster than they are written
3. Unmaintainable morass of increasingly vulnerable code making a nice habitat for rogue AI