CS 378: Study Guide for Midterm Exam

Date: Thursday, March 11, 2021, 2 PM on Canvas.

  • Clojure:
  • Trees:
  • Pattern Matching:
  • Logic:

    Vocabulary

    abstract syntax tree (AST) association list atom
    backchaining backtrack base case
    binary tree binary search tree (BST) binding
    box branching factor combinatoric explosion
    combine conjunctive normal form (CNF) consistent
    constant folding constructive decidable
    depth depth-first search design pattern
    destructive DFS eval
    exists ∃ fixpoint for all ∀
    functional program ground literal homoiconic
    Horn clause identity element immutable
    inconsistent inference interpretation
    in-line interior node interpreter
    invalid leaf linked list
    literal loop unrolling macro
    modus ponens operand operator
    partial evaluation predicate predicate calculus
    propositional calculus quote recursion
    rewrite rule root SAT
    SAT solver satisfiable scope
    search side-effect Skolem function
    specialize state space search structure sharing
    symbol tail recursion term
    unification unsatisfiable valid
    variable capture variable in pattern well-founded ordering