Fundamental knowledge about algorithms and formal languages. Data structures and basic constructs of computation. Knowledge representation through logic. Propositional calculus: syntax, semantics, inferences. Definition of artificial intelligence, foundation, history and state of the art. Intelligent agents, agents and environment, structure of the agents. Problem solving. Problem solving by searching and search algorithms.