n Design and assessment of
techniques and software tools for
creating automated problem
solutions.
n programming language: a
precise, formal notation for
expressing and analyzing a
natural, correct, efficient program
solution.