Computational Thinking (Topic 1)
Problem-solving constructs.
Decomposition | Abstraction | Pattern recognition | Algorithm design — the four pillars Finite state machines (FSM): states, transitions, alphabet — accepting vs non-accepting; Mealy (output on transition) vs Moore (output on state) Regular expressions, BNF (Backus-Naur Form), context-free grammars Halting problem — undecidable: no algorithm can determine for all programs whether they will halt.