Explainer · Techniques hub

Symbolic AI techniques: every major method, 1956 to today

More than 130 techniques, systems and landmark results in one table, from resolution and A* to the Rete algorithm, STRIPS, CDCL and inductive logic programming: who introduced each one and when, what it does, and whether it is still used. Then the ten families they belong to, how those families descend from the founding ideas of 1956, and which technique to reach for.

Symbolic AI techniques are the methods that let a program reason with explicit symbols rather than learned weights: logic and theorem proving, search, planning, knowledge representation, rule-based expert systems, constraint and SAT solving, non-monotonic reasoning, cognitive architectures and symbolic learning. Each one produces answers that can be traced step by step to stated facts and rules.

In one paragraph

Symbolic AI is not one algorithm. It is a toolbox built over seventy years, and most of its tools are still in daily use under other names: SAT solvers check chip designs, A* plans paths in games, rule engines built on the Rete algorithm apply insurance policy, proof assistants check mathematics, and knowledge graphs sit behind search. This page is the map. The master table lists every major technique with its year, originators and family, and links to a page that explains it in depth. The lineage figure shows how the ten families grew from three ideas that were already on the table by 1960. The guide matches problems to techniques, and the last sections are honest about where the techniques break and what they contribute to fail-safe models. For the definition of symbolic AI itself, start with What is symbolic AI?

1. What counts as a symbolic AI technique

The pillar page defines symbolic AI as the approach that represents knowledge as explicit, human-readable symbols and reaches conclusions with logic, inference and search. A technique is one reusable method inside that approach: a representation, an inference procedure, a search strategy, or a way of learning symbolic structures from data. For this page we use a working test.

Definition (symbolic technique). A method is a symbolic AI technique when (i) its inputs and internal states are discrete structures with a declared meaning, such as formulas, rules, graphs or states; (ii) each step applies an explicit rule or operator that a person can name; and (iii) its result can be checked against those rules independently of the program that produced it.

The test includes some methods that learn from data, such as decision trees and inductive logic programming, because what they learn is itself a readable symbolic structure. It excludes methods whose result is a vector of weights, even when they are trained on symbolic data. It also includes a few results that are not procedures, such as the Cook–Levin theorem and the frame problem, because they set the limits every technique works within. Several techniques are older than the field: Boole’s logic (1847), Frege’s first-order logic (1879) and von Neumann’s minimax (1928) became AI techniques when programs began to use them. The history of symbolic AI tells the story in order; this page is organised by method, and the standard textbook treatment of most of these techniques is Russell and Norvig [1].

2. The master table: every major technique

The table is in chronological order. Each technique links to the section of its family page that explains how it works, with a worked example and its limits. The year is the first publication or first working system we could verify; where a technique has two important dates (the idea and the name, or the idea and the practical version), both are given. Still used today? is a short judgement: yes means in routine production or research use, historical means its ideas survive but the technique itself is rarely run, and plain text marks a niche or research-only status.

Symbolic AI techniques in chronological order. Sources: the references in §9 and the family pages linked from each row.
techniqueyearoriginatorsfamilywhat it doesstill used today?
Propositional logic1847George Boole (algebraic form)Logic programming and theorem provingStatements that are true or false, joined by and, or, not; the language of SAT.Yes: circuits, SAT
First-order logic1879Gottlob Frege (Begriffsschrift)Logic programming and theorem provingAdds objects, relations and the quantifiers “for all” and “there exists”.Yes: specifications, provers
Depth-first search19th c.Charles Pierre Trémaux (maze solving)Search algorithmsFollows one path as deep as it goes, then backs up; needs little memory.Yes: everywhere
Minimax1928John von Neumann; applied to chess by Claude Shannon (1950)Search algorithmsPicks the move whose worst-case outcome is best in a two-player game tree.Yes: game engines
Herbrand’s theorem1930Jacques HerbrandLogic programming and theorem provingReduces first-order unsatisfiability to a finite contradictory set of ground instances.Yes: inside provers
Production systems1943; 1972Emil Post (rewriting rules); Allen Newell, Herbert Simon (as a model of cognition)Expert systemsIF–THEN rules that fire against a working memory of facts.Yes: rule engines
Breadth-first search1945; 1959Konrad Zuse (published 1972); Edward F. MooreSearch algorithmsExplores states level by level; finds a shortest path when every step costs the same.Yes: everywhere
Backtracking search1950sNamed by D. H. LehmerConstraint satisfaction, SAT and SMTExtends a partial solution one choice at a time and undoes the last choice at a dead end.Yes: inside every solver
State-space search1956Allen Newell, Cliff Shaw, Herbert Simon (Logic Theorist, GPS)Search algorithmsA problem as states, operators and a goal test; solving it means finding a path.Yes: the common frame
Alpha–beta pruning1956John McCarthy and others independently; analysed by Donald Knuth, Ronald Moore (1975)Search algorithmsSkips game-tree branches that cannot change the minimax choice; the search behind Deep Blue (1997).Yes: chess engines
Means–ends analysis1957–59Newell, Shaw, Simon (General Problem Solver)Search algorithmsApplies the operator that most reduces the difference between the current state and the goal.Historical; lives on in planners
Program synthesis1957Alonzo Church (“Church’s problem”)Formal verification and program synthesisThe problem of constructing a program or circuit automatically from a logical specification.Active research
Commonsense reasoning1958–59John McCarthy (“Programs with Common Sense”)Non-monotonic reasoningThe programme of drawing the everyday conclusions people take for granted, with knowledge written in logic.Open research goal
Uniform-cost search1959Edsger Dijkstra (shortest paths)Search algorithmsExpands the cheapest path first; optimal when step costs are non-negative.Yes: routing
DPLL1962Martin Davis, George Logemann, Donald Loveland (after Davis–Putnam, 1960)Constraint satisfaction, SAT and SMTDecides SAT by choosing a variable, propagating unit clauses and backtracking.Yes: the core of CDCL
Situation calculus1963; 1969John McCarthy; with Patrick Hayes (1969)AI planningA logic of actions: each fact holds in the situation produced by a sequence of actions.Research
Resolution1965J. Alan RobinsonLogic programming and theorem provingOne inference rule, refutation-complete for first-order logic: derive a contradiction from the negated goal.Yes: Vampire, E, Prolog
Unification1965J. Alan RobinsonLogic programming and theorem provingFinds the most general substitution that makes two terms identical.Yes: Prolog, type inference
DENDRAL1965Edward Feigenbaum, Bruce Buchanan, Joshua Lederberg, Carl Djerassi (Stanford)Expert systemsInferred molecular structure from mass-spectrometry data; usually called the first expert system.Historical
A*1968Peter Hart, Nils Nilsson, Bertram Raphael (SRI)Search algorithmsBest-first search on f = g + h; returns an optimal path when h never overestimates.Yes: games, robots, maps
Semantic networks1968M. Ross QuillianKnowledge representationConcepts as nodes and relations as labelled links, with inheritance along is-a links.Yes, as knowledge graphs
Hoare logic1969C. A. R. HoareFormal verification and program synthesisTriples {P} C {Q}: prove that a program takes states satisfying P to states satisfying Q.Yes: program verifiers
Frame problem1969John McCarthy, Patrick HayesNon-monotonic reasoningHow to state what an action leaves unchanged without listing every non-effect.A problem, still studied
Conceptual dependency1969Roger SchankKnowledge representationRepresents what a sentence means with a few primitive acts, independent of its wording.Historical
AQ1969Ryszard MichalskiSymbolic machine learningInduces IF–THEN rules that cover the positive examples and exclude the negative ones.Mostly historical
Knuth–Bendix completion1970Donald Knuth, Peter BendixFormal verification and program synthesisTurns equations into a confluent rewrite system, when it succeeds, so equality is decided by rewriting.Yes: equational provers
Term rewriting1970sA field rather than one paper; grew around Knuth–BendixFormal verification and program synthesisComputes by replacing subterms with oriented equations until no rule applies.Yes: compilers, algebra
Forward chaining1970sProduction-system traditionExpert systemsData-driven: fire every rule whose conditions hold until nothing new is derived.Yes: rule engines, Datalog
Backward chaining1970sMYCIN and Prolog traditionExpert systemsGoal-driven: work back from the question to facts, turning rule conditions into sub-goals.Yes: Prolog, rule engines
Hearsay-II1970sLee Erman, Frederick Hayes-Roth, Victor Lesser, Raj Reddy (Carnegie Mellon)Cognitive architecturesSpeech-understanding system in which many knowledge sources cooperate through a blackboard.Historical
Blackboard systems1970sHearsay-II team (Carnegie Mellon)Cognitive architecturesIndependent specialists post and revise partial hypotheses on a shared data structure.Niche
STRIPS1971Richard Fikes, Nils Nilsson (SRI)AI planningActions as preconditions plus add and delete lists; the representation behind PDDL.Yes, via PDDL
Cook–Levin theorem1971Stephen Cook; Leonid Levin independentlyConstraint satisfaction, SAT and SMTProves SAT NP-complete, so no known algorithm solves every instance quickly.A theorem: sets the limits
Prolog1972Alain Colmerauer, Philippe Roussel, building on Robert KowalskiLogic programming and theorem provingPrograms are Horn clauses; running one is a resolution proof search.Yes: SWI-Prolog and others
MYCINearly 1970sEdward Shortliffe, with Bruce Buchanan, Stanley Cohen (Stanford)Expert systemsAbout 600 backward-chaining rules to identify bacteria and recommend antibiotics.Historical; never used clinically
Sussman anomalyearly 1970sGerald SussmanAI planningA blocks-world goal that defeats planners which solve subgoals one after another.A test case, still taught
Proof assistants1972 onwardLCF (Robin Milner); Isabelle (Lawrence Paulson, 1986); Coq, now Rocq (1989); HOL (Michael Gordon); Lean (Leonardo de Moura, 2013)Logic programming and theorem provingA person steers the proof; a small trusted kernel checks every step.Yes: Lean, Rocq, Isabelle
SLD resolution1974Robert Kowalski; named by Maarten van EmdenLogic programming and theorem provingGoal-directed linear resolution for definite clauses; the procedure inside Prolog.Yes, inside Prolog
Frames1974Marvin MinskyKnowledge representationRecords for stereotyped situations, with slots, default values and attached procedures.Yes, via objects and ontologies
Constraint satisfaction problems1974Ugo Montanari (networks of constraints)Constraint satisfaction, SAT and SMTVariables, domains and constraints; a solution gives every variable a value that satisfies all constraints.Yes: scheduling, configuration
Partial-order planning1975; 1977Earl Sacerdoti (NOAH); Austin Tate (Nonlin)AI planningOrders plan steps only where it must, and resolves conflicts by adding ordering constraints.Largely superseded
HTN planning1975–77Sacerdoti (NOAH), Tate (Nonlin); later SHOP (Dana Nau et al., 1999)AI planningDecomposes high-level tasks into subtasks with known methods, down to primitive actions.Yes: games, robotics
Certainty factors1975Edward Shortliffe, Bruce Buchanan (MYCIN)Expert systemsNumbers from −1 to 1 attached to rules and combined by fixed formulas.Replaced by probability
Weakest preconditions1975Edsger DijkstraFormal verification and program synthesisComputes the weakest condition under which a program is guaranteed to reach a goal state.Yes: inside verifiers
Conceptual graphs1976John SowaKnowledge representationA graph notation for logic, descended from Peirce’s existential graphs.Niche
Subjective Bayesian inference1976Richard Duda, Peter Hart, Nils Nilsson (PROSPECTOR)Expert systemsUpdates the odds of a hypothesis with expert-supplied likelihood ratios for each rule.Replaced by Bayesian networks
Scripts1977Roger Schank, Robert AbelsonKnowledge representationStereotyped event sequences, such as a restaurant visit, that fill in unstated facts.Historical
Abstract interpretation1977Patrick Cousot, Radhia CousotFormal verification and program synthesisRuns a program over sound abstract values to prove properties for all inputs.Yes: static analysers
Temporal logic1977; 1981Amir Pnueli (LTL); Edmund Clarke, E. Allen Emerson (CTL)Formal verification and program synthesisA logic of “always”, “eventually” and “until” over program executions.Yes: specifications
Arc consistency1977Alan Mackworth (AC-3), after David Waltz and Ugo MontanariConstraint satisfaction, SAT and SMTDeletes any value that has no supporting value across a constraint.Yes: inside CP solvers
Constraint propagation1970sDavid Waltz, Ugo Montanari, Alan MackworthConstraint satisfaction, SAT and SMTRepeats local consistency checks until the domains stop shrinking.Yes: CP, SAT, ASP
Version spaces1977Tom MitchellSymbolic machine learningKeeps the most general and most specific hypotheses consistent with the examples.Historical; still taught
Knowledge engineering1977Edward FeigenbaumExpert systemsThe practice of eliciting an expert’s knowledge and encoding it as rules.Yes: rules, ontologies
Knowledge-acquisition bottleneck1977Edward FeigenbaumExpert systemsThe finding that getting knowledge out of experts is the limiting cost of expert systems.Still the central cost
Datalog1977Hervé Gallaire, Jack Minker (logic and databases); named by David MaierLogic programming and theorem provingFunction-free rules evaluated bottom-up over a database; evaluation always terminates.Yes: program analysis, databases
Negation as failure1978Keith ClarkNon-monotonic reasoningTreats “cannot be proved” as “false”; the negation used by Prolog and Datalog.Yes: Prolog, ASP
PROSPECTORlate 1970sRichard Duda, Peter Hart and colleagues (SRI)Expert systemsMineral-exploration adviser; a 1982 paper reported it recognising a hidden deposit.Historical
Closed-world assumption1978Raymond ReiterNon-monotonic reasoningAnything that cannot be derived is taken to be false.Yes: every database query
EMYCINlate 1970sWilliam van Melle (Stanford)Expert systemsMYCIN with the medical knowledge removed: an early expert-system shell.Historical
Truth maintenance systems1979Jon DoyleNon-monotonic reasoningRecords why each belief is held, so a belief can be withdrawn when its support goes.Niche
Default logic1980Raymond ReiterNon-monotonic reasoningRules that apply unless contradicted: birds fly unless known otherwise.Research; lives on in ASP
Circumscription1980John McCarthyNon-monotonic reasoningAssumes abnormal cases are as few as the known facts allow.Research
XCON1980John McDermott (Carnegie Mellon) for DECExpert systemsConfigured VAX computer orders with OPS5 rules; about 2,500 rules at its peak.Historical
Deductive program synthesis1980Zohar Manna, Richard WaldingerFormal verification and program synthesisExtracts a program from a constructive proof that the required output exists.Research; ideas in proof assistants
Non-monotonic logic1980Drew McDermott, Jon DoyleNon-monotonic reasoningAdds a modal “is consistent” operator so defaults can be written inside the logic.Research
SPIN1980; free 1991Gerard Holzmann (Bell Labs)Formal verification and program synthesisAn explicit-state model checker for concurrent software, with properties written in LTL.Yes: protocols
OPS51981Charles Forgy (Carnegie Mellon)Expert systemsA production-rule language with Rete matching; XCON was written in it.Historical; heirs in CLIPS
Model checking1981–82Edmund Clarke, E. Allen Emerson; Jean-Pierre Queille, Joseph SifakisFormal verification and program synthesisChecks every state of a finite model against a temporal formula and returns a counterexample; tools include SPIN.Yes: chips, protocols
Rete algorithm1982Charles ForgyExpert systemsCompiles rule conditions into a network that caches partial matches, so only changes are re-matched.Yes: Drools, CLIPS
Case-based reasoningearly 1980s; 1994Roger Schank, Janet Kolodner; four-step cycle by Agnar Aamodt, Enric PlazaSymbolic machine learningSolves a new problem by retrieving, reusing, revising and retaining similar past cases.Niche
Structure-mapping1983Dedre GentnerSymbolic machine learningModels analogy as aligning relational structure between a known and a new domain.Research: cognitive science
Local search1983Hill climbing; simulated annealing by Scott Kirkpatrick, C. Daniel Gelatt, Mario VecchiSearch algorithmsKeeps one current state and moves to better neighbours, sometimes accepting worse ones to escape local optima.Yes: layout, timetabling
Cyc1984Douglas Lenat (MCC)Knowledge representationA hand-built knowledge base of common sense with an inference engine.Niche
IDA*1985Richard KorfSearch algorithmsA* run as iterative deepening on f; optimal, with memory linear in depth.Yes: memory-bound search
Autoepistemic logic1985Robert C. MooreNon-monotonic reasoningLets a reasoner draw conclusions from what it knows it does not know.Research
KL-ONElate 1970s; 1985Ronald Brachman; overview with James Schmolze (1985)Knowledge representationStructured inheritance networks with defined concepts; the ancestor of description logics.Historical
Description logics1980sKL-ONE’s successors (name adopted in the 1980s)Knowledge representationDecidable fragments of first-order logic for class hierarchies; OWL is built on one.Yes: OWL reasoners
CLIPS1985NASA Johnson Space CenterExpert systemsA production-rule shell written in C, with Rete matching.Yes: still maintained
Belief revision1985Carlos Alchourrón, Peter Gärdenfors, David Makinson (AGM)Non-monotonic reasoningPostulates for rationally adding, removing and revising beliefs in a consistent set.Research
BB11985Barbara Hayes-RothCognitive architecturesA blackboard system with a second blackboard for its own control plans.Historical
WordNet1985George A. Miller and colleagues (Princeton)Knowledge representationA lexical database that groups English words into synonym sets linked by relations such as is-a and part-of.Yes: language processing
Iterative deepening1985Used in chess programs; analysed by Richard KorfSearch algorithmsRuns depth-limited search with limits 0, 1, 2 and so on; optimal among brute-force tree searches.Yes: game engines
Explanation-based learning1986Tom Mitchell, Richard Keller, Smadar Kedar-Cabelli; Gerald DeJong, Raymond MooneySymbolic machine learningGeneralises from one example by proving why it is an instance and keeping the proof’s conditions.Niche
ID31986J. Ross QuinlanSymbolic machine learningGrows a decision tree by splitting on the attribute with the highest information gain.Yes, as decision trees
ATMS1986Johan de KleerNon-monotonic reasoningAssumption-based TMS: records the minimal sets of assumptions under which each belief holds.Niche: diagnosis
Event calculus1986Robert Kowalski, Marek SergotNon-monotonic reasoningA logic of events that start and stop properties holding over time.Research
Chunking1986John Laird, Paul Rosenbloom, Allen NewellCognitive architecturesSoar’s learning: the result of resolving an impasse is compiled into a new rule.Yes, in Soar
Yale shooting problem1986–87Steve Hanks, Drew McDermottNon-monotonic reasoningShows that naively minimising change picks the wrong story of what happens over time.A test case, still taught
Soar1987John Laird, Allen Newell, Paul RosenbloomCognitive architecturesModels all behaviour as search in problem spaces, with rules in long-term memory.Research, simulation
Constraint logic programming1987Joxan Jaffar, Jean-Louis LassezConstraint satisfaction, SAT and SMTReplaces unification in logic programming with constraint solving over a domain.Yes: in Prolog systems
TREAT1987Daniel MirankerExpert systemsA rule matcher that recomputes joins on demand instead of storing partial matches.Ideas in lazy matchers
Answer set programming1988; 1999Michael Gelfond, Vladimir Lifschitz (stable models); named in 1999Logic programming and theorem provingA problem is written as rules whose stable models are exactly its solutions.Yes: configuration, scheduling
Automated theorem proverslate 1980s onwardOtter (William McCune, Argonne); Vampire (Andrei Voronkov, Manchester); E (Stephan Schulz)Logic programming and theorem provingSearch for first-order proofs without human guidance.Yes: Vampire, E
CN21989Peter Clark, Tim NiblettSymbolic machine learningLearns ordered lists of IF–THEN rules that tolerate noisy data.Niche
FOIL1990J. Ross QuinlanSymbolic machine learningLearns first-order Horn clauses greedily, guided by information gain.Niche
Cognitive tutors1980s–1995John R. Anderson, Albert Corbett, Kenneth Koedinger and colleaguesCognitive architecturesTutoring systems that trace each student step against a production-rule model of the skill.Yes: maths tutoring
Symbolic model checking1990Jerry Burch, Edmund Clarke, Kenneth McMillan, David Dill, L. J. Hwang, on Randal Bryant’s BDDs (1986)Formal verification and program synthesisRepresents sets of states as binary decision diagrams, checking systems with more than 10²⁰ states.Yes: hardware
Preferential models1990Sarit Kraus, Daniel Lehmann, Menachem MagidorNon-monotonic reasoningAxioms (System P) that any reasonable non-monotonic consequence relation should satisfy.Research
GSAT and min-conflicts1990; 1992Steven Minton et al. (min-conflicts); Bart Selman, Hector Levesque, David Mitchell (GSAT)Constraint satisfaction, SAT and SMTRepairs a complete assignment one variable at a time to reduce violated constraints; fast but cannot prove unsatisfiability.Yes: large scheduling
Inductive logic programming1991Stephen Muggleton (named it), after Gordon Plotkin and Ehud ShapiroSymbolic machine learningLearns logic programs from examples plus background knowledge.Research, scientific discovery
Genetic programming1992John Koza; earlier tree-based work by Nichael CramerSymbolic machine learningEvolves program trees by selection, crossover and mutation.Niche
SATPlan1992Henry Kautz, Bart SelmanAI planningEncodes a planning problem with a fixed horizon as a SAT formula.Research; the idea is in use
Symbolic regression1992; 2009John Koza; Michael Schmidt, Hod LipsonSymbolic machine learningSearches for a formula that fits data; the output is an equation.Yes: science, PySR
ACT-R1993John R. Anderson (from ACT, 1976, and ACT*, 1983)Cognitive architecturesProduction rules plus declarative chunks whose activation predicts human timing and errors.Research: cognitive modelling
C4.51993J. Ross QuinlanSymbolic machine learningID3’s successor: numeric attributes, missing values and pruning.Yes, as decision trees
Ontologies1993Tom Gruber (standard definition)Knowledge representationShared, formal vocabularies of classes, relations and constraints.Yes: SNOMED CT, Gene Ontology
Graphplan1995Avrim Blum, Merrick FurstAI planningBuilds a layered planning graph with mutual-exclusion links, then searches it backward.Ideas live on in heuristics
Progol1995Stephen MuggletonSymbolic machine learningILP by inverse entailment, searching from a most-specific clause.Niche
Abstract argumentation1995Phan Minh DungNon-monotonic reasoningArguments plus an attack relation; accepted sets are those that defend themselves.Research
CDCL1996; 2001João Marques-Silva, Karem Sakallah (GRASP); Matthew Moskewicz et al. (Chaff)Constraint satisfaction, SAT and SMTDPLL plus a clause learned from every conflict and non-chronological backjumping.Yes: every modern SAT solver
Deep Blue1997Murray Campbell, A. Joseph Hoane Jr., Feng-hsiung Hsu (IBM)Search algorithmsMassively parallel alpha–beta search with custom chess chips; beat Garry Kasparov.Historical
EPIC1997David Kieras, David Meyer (Michigan)Cognitive architecturesA cognitive architecture with parallel rules and detailed perceptual and motor timing.Research: human factors
PDDL1998Drew McDermott and colleagues (for the International Planning Competition)AI planningThe standard language for planning domains and problems.Yes: the standard
International Planning Competition1998Drew McDermott and the planning communityAI planningRegular head-to-head comparison of planners on shared PDDL benchmarks.Yes: held regularly
Heuristic search planning1998–2001Blai Bonet, Héctor Geffner (HSP); Jörg Hoffmann, Bernhard Nebel (FF)AI planningForward search guided by a heuristic computed from a relaxed problem that ignores delete lists.Yes: the dominant approach
RDF1999W3CKnowledge representationFacts as subject–predicate–object triples named by web identifiers.Yes: linked data, Wikidata
Bounded model checking1999Armin Biere, Alessandro Cimatti, Edmund Clarke, Yunshan ZhuFormal verification and program synthesisUnrolls a system k steps and asks a SAT solver for a counterexample of that length.Yes: CBMC, hardware
SMT2000sRoots in Nelson–Oppen (1979); CVC (Stanford); Z3 (Leonardo de Moura, Nikolaj Bjørner, 2008)Constraint satisfaction, SAT and SMTSAT plus decision procedures for arithmetic, arrays and bit-vectors.Yes: verification, testing
SMT-based verification2000sMany tools, e.g. Dafny (K. Rustan M. Leino, Microsoft Research)Formal verification and program synthesisTurns a program’s correctness conditions into SMT queries and discharges them automatically.Yes: industrial verifiers
Aleph2001Ashwin SrinivasanSymbolic machine learningA widely used ILP system in the Progol tradition.Research
Separation logic1999–2002John C. Reynolds, Peter O’Hearn, Samin Ishtiaq, Hongseok YangFormal verification and program synthesisExtends Hoare logic to pointer programs: a proof about one part of the heap can ignore the rest.Yes: static analysers
OWL2004W3CKnowledge representationThe Web Ontology Language, built on description logics; OWL 2 followed in 2009.Yes: ontologies
Drools2005Bob McWhirter, Mark Proctor (JBoss, later Red Hat)Expert systemsA Java business-rules engine with an enhanced Rete matcher.Yes: business rules
Fast Downward2006Malte HelmertAI planningA heuristic-search planner working on a multi-valued translation of PDDL.Yes: a research standard
Monte Carlo tree search2006Rémi Coulom (name); Levente Kocsis, Csaba Szepesvári (UCT)Search algorithmsGrows a game tree guided by random playouts; AlphaGo (2016) guided it with neural networks.Yes: games, planning
CompCert2005–06Xavier Leroy (INRIA)Formal verification and program synthesisAn optimising C compiler with a machine-checked Coq proof that compilation preserves meaning.Yes: safety-critical code
seL42009Gerwin Klein and colleagues (NICTA)Formal verification and program synthesisA microkernel whose C code is proved in Isabelle/HOL to implement its specification.Yes
Inductive program synthesis2011Sumit Gulwani (FlashFill)Formal verification and program synthesisInfers a program from input–output examples.Yes: Excel Flash Fill
Knowledge graphs2012Google Knowledge Graph; WikidataKnowledge representationVery large graphs of entities and typed relations that programs query and check.Yes: search, data integration
Syntax-guided synthesis2013Rajeev Alur and colleagues; after Armando Solar-Lezama’s Sketch (2006)Formal verification and program synthesisSearches a user-given grammar for a program that meets a logical specification.Research
AlphaGo2016DeepMind (David Silver et al.)Search algorithmsMonte Carlo tree search guided by policy and value networks; beat Lee Sedol 4–1.A hybrid milestone
Common Model of Cognition2017John Laird, Christian Lebiere, Paul RosenbloomCognitive architecturesThe shared structure that ACT-R, Soar and Sigma converged on: working memory, procedural and declarative memory.Research

3. How the families descend from 1956

By 1960 three ideas were on the table. Logic as representation: McCarthy’s Advice Taker proposal (1958) held that a program should store what it knows as sentences of formal logic and act on what it can deduce. Heuristic search: the Logic Theorist (1956) proved theorems by searching backward from the goal with rules of thumb, and GPS generalised the idea as means–ends analysis. Models of human thought: Newell and Simon built GPS as a theory of how people solve problems, the line that led to production rules, semantic memory and, eventually, cognitive architectures. Every family in this page descends from one or more of them.

How the ten families of symbolic AI techniques descend from the founding ideas Three bands. Top: three founding ideas from 1956 to 1960, labelled A logic as representation, B heuristic search, C models of human thought. Middle: the ten technique families, numbered 1 to 10, each marked with coloured dots for the founding ideas it descends from. Bottom: five kinds of system in use today, each listing the families it draws on. Founding ideas, 1956–1960 A. Logic as representation Advice Taker (McCarthy, 1958) B. Heuristic search Logic Theorist (1956), GPS C. Models of human thought GPS as a theory of problem solving Ten technique families, 1960s–1990s 1 Logic programming and theorem proving 2 Formal verification and synthesis 3 Search algorithms 4 AI planning 5 Constraints, SAT and SMT 6 Knowledge representation 7 Non-monotonic reasoning 8 Expert systems 9 Cognitive architectures 10 Symbolic machine learning In use today Solvers and verifiers SAT, SMT, CompCert from 1, 2, 5 Proof assistants Lean, Rocq, Isabelle from 1, 2 Planners and game search PDDL, A*, MCTS from 3, 4 Rules and knowledge Drools, OWL, graphs from 6, 7, 8 Neuro-symbolic systems AlphaGo, AlphaGeometry from 1, 3, 5 Dots show the founding idea(s) each family descends from: green A, blue B, brown C.

Figure 1. The lineage of symbolic AI techniques. The families are numbered as in §4. Descent is shared: most families draw on more than one founding idea, and most systems in use today draw on more than one family.

The descent is not a tidy tree. Planning combined logic with search. Constraint solving and SAT turned logical questions into search problems and then made the search fast. Symbolic learning took its hypothesis languages from logic and its strategies from search. Today’s working systems draw on several families at once: CompCert is a compiler proved correct in a proof assistant; a modern planner is a heuristic search over a logical model; and neuro-symbolic systems such as AlphaGeometry pair a neural network that proposes with a symbolic engine that deduces.

4. The ten families

Each family below has its own page with an explanation of every technique in it, worked examples, a timeline and references. The summaries here say what the family is for, name its landmark techniques, and say where it stands today.

4.1 Logic programming and theorem proving

The oldest family, and the one the others borrow from. Its raw material is propositional and first-order logic used as a working language rather than as philosophy. The decisive step was J. Alan Robinson’s resolution principle and unification algorithm (1965): one inference rule that is refutation-complete for first-order logic, and one matching operation that makes it mechanical [2]. Herbrand’s theorem (1930) had already shown that such a search can, in principle, find every proof.

Two lines grew from resolution. Logic programming restricted it to Horn clauses so that running a program is a proof search: Kowalski’s SLD resolution [3], Prolog (1972) [4], Datalog for databases and, after Gelfond and Lifschitz’s stable models (1988) [5], answer set programming for hard combinatorial problems. Theorem proving kept full logic: automatic provers such as Otter, Vampire and E search for proofs on their own, while interactive proof assistants in the LCF tradition, such as Isabelle, HOL, Rocq (formerly Coq) and Lean, let a person steer and have a small kernel check every step. Logic programming and theorem proving, in depth →

4.2 Formal verification and program synthesis

Verification asks whether a program or circuit does what its specification says for every input, not just the tested ones. Hoare logic (1969) proves properties of programs one statement at a time [6]. Model checking, introduced independently by Clarke and Emerson and by Queille and Sifakis in 1981–82, explores every state of a finite model against a temporal-logic formula and returns a counterexample when the property fails [7] [8]. Abstract interpretation (Cousot and Cousot, 1977) proves the absence of whole classes of errors by computing over sound approximations of a program’s values [9]. Term rewriting and Knuth–Bendix completion (1970) supply the equational reasoning underneath [10].

Synthesis runs the other way, from a specification to a program. Manna and Waldinger extracted programs from constructive proofs [11]; inductive synthesis, made mainstream by Sumit Gulwani’s FlashFill (2011), infers programs from examples [12]. The results that matter most today are verified systems: CompCert, a C compiler proved correct in Coq [13], and seL4, a microkernel proved correct in Isabelle/HOL [14]. Both lean on the provers and SMT solvers of neighbouring families. Formal verification and program synthesis, in depth →

4.3 Search algorithms

Almost every symbolic technique reduces, somewhere, to search through a space of states. Uninformed strategies, breadth-first, depth-first and uniform-cost search, guarantee coverage. Heuristic search adds an estimate of the remaining cost. A* (Hart, Nilsson and Raphael, 1968) always expands the node with the lowest estimated total cost [15]:

f(n)=g(n)+h(n),0≤h(n)≤h*(n)

where g(n) is the cost so far and h(n) the estimate. If h never overestimates the true remaining cost h*, the first goal A* expands is optimal. IDA* (Korf, 1985) gives the same guarantee with memory linear in the depth [16]. Games add an adversary: minimax picks the move with the best worst case, and alpha–beta pruning, found independently by several researchers from 1956 and analysed by Knuth and Moore in 1975 [17], skips branches that cannot change the answer; it was the search inside Deep Blue in 1997. Monte Carlo tree search (Coulom; Kocsis and Szepesvári, 2006) replaced the hand-written evaluation with random playouts [18] [19], and AlphaGo (2016) made it a hybrid by guiding it with neural networks [20]. Search algorithms, in depth →

4.4 AI planning

Planning is search in which the states are logical descriptions of the world and the moves are actions with preconditions and effects. McCarthy’s situation calculus (1963, developed with Hayes in 1969) gave the logical account [21]. STRIPS (Fikes and Nilsson, 1971) gave the practical one: each action has a precondition list, an add list and a delete list, and everything not deleted is assumed to stay true, which sidesteps much of the frame problem [22].

Later planners changed how the search is organised. Partial-order planning commits to an order between steps only where it has to; HTN planning decomposes tasks using known recipes; Graphplan (Blum and Furst, 1995) and SATPlan (Kautz and Selman, 1992) compiled planning into a layered graph or a SAT formula [23] [24]. PDDL (1998) standardised the input language for the International Planning Competition [25], and heuristic-search planners such as Fast Downward (Helmert, 2006) [26] are the standard today. AI planning, in depth →

4.5 Constraint satisfaction, SAT and SMT

Many problems are best stated as constraints: a set of variables, a domain of possible values for each, and constraints that the chosen values must satisfy together.

P=⟨X,D,C⟩,find a:X→⋃D with a⊨c for every c∈C

Montanari (1974) formalised networks of constraints [27]; backtracking search, arc consistency (Mackworth’s AC-3, 1977) [28] and constraint propagation prune the space; constraint logic programming (Jaffar and Lassez, 1987) put constraint solving inside Prolog [29]. Propositional satisfiability (SAT) is the special case with true-or-false variables. Cook (1971) proved it NP-complete [30]; DPLL (1962) gave the basic algorithm [31]; conflict-driven clause learning (GRASP, 1996; Chaff, 2001) made it practical on very large industrial formulas [32] [33]. SMT solvers such as Z3 (2008) [34] and cvc5 add theories of arithmetic, arrays and bit-vectors. Together they are probably the most heavily used symbolic AI in industry: hardware and software verification, scheduling, test generation and package-dependency resolution. Constraint satisfaction, SAT and SMT, in depth →

4.6 Knowledge representation

Knowledge representation decides what a system can say before any reasoning happens. Semantic networks (Quillian, 1968) put concepts in a graph with is-a links [35]; frames (Minsky, 1974) added slots and defaults [36]; conceptual dependency and scripts (Schank; Schank and Abelson, 1977) represented the meaning of sentences and stereotyped events [37]; conceptual graphs (Sowa, 1976) gave networks a logical reading [38].

The trade-off between how much a language can express and how fast it can be reasoned with became a field of its own. KL-ONE [39] led to description logics, decidable fragments of first-order logic that became the basis of OWL, a W3C standard since 2004. RDF (1999) standardised facts as triples; Gruber’s 1993 definition of an ontology as an explicit specification of a conceptualisation became the standard one [40]; Cyc (1984) tried to hand-encode common sense. Knowledge graphs, from Google’s in 2012 to Wikidata, are today’s large-scale semantic networks, usually with lighter reasoning. Knowledge representation, in depth →

4.7 Non-monotonic reasoning

Classical logic is monotonic: adding premises never removes a conclusion.

Γ⊢φ⟹Γ∪Δ⊢φ

Common sense is not. “Tweety is a bird” suggests that Tweety flies, until you learn that Tweety is a penguin. In 1980 Reiter’s default logic and McCarthy’s circumscription offered two formal answers [41] [42]; Moore’s autoepistemic logic (1985) reasoned about what an agent knows it does not know [43]; Clark’s negation as failure (1978) is the version that runs inside Prolog and Datalog [44].

Truth maintenance systems (Doyle, 1979; de Kleer’s ATMS, 1986) do the bookkeeping: they record why each belief is held so it can be withdrawn when its support goes [45] [46]. The frame problem (McCarthy and Hayes, 1969) and the event calculus (Kowalski and Sergot, 1986) deal with change over time [47]. Much of this research now runs as answer set programming. Non-monotonic reasoning, in depth →

4.8 Expert systems

Expert systems took production rules (IF conditions THEN action, from Post and later Newell and Simon) and filled them with a specialist’s knowledge. DENDRAL (from 1965) inferred molecular structures; MYCIN (early 1970s) identified the bacteria behind infections by backward chaining and weighed evidence with certainty factors [48]; PROSPECTOR (SRI, late 1970s) advised on mineral exploration and was reported in 1982 to have recognised a hidden deposit [49]; XCON, or R1 (1980), configured DEC computer orders [50]. Shells such as EMYCIN, OPS5 and CLIPS separated the inference engine from the knowledge.

The engineering breakthrough was Forgy’s Rete algorithm (1982), which caches partial matches so that each change to working memory re-matches only what it touches [51]. The limit was the knowledge-acquisition bottleneck that Feigenbaum identified in 1977 [52]: rules had to be drawn out of experts by hand and maintained indefinitely. Rete-derived engines such as Drools and CLIPS still run business rules, eligibility checks and compliance logic. Expert systems, in depth →

4.9 Cognitive architectures

A cognitive architecture is a fixed set of mechanisms meant to model a whole mind rather than one task. Hearsay-II, a speech-understanding system built at Carnegie Mellon in the 1970s, introduced the blackboard: independent knowledge sources post and revise hypotheses on a shared structure [53]. Soar (Laird, Newell and Rosenbloom, 1987) models all behaviour as search in problem spaces [54], and learns by chunking: when it resolves an impasse, it compiles the result into a new rule [55].

ACT-R (John R. Anderson; ACT-R in 1993, from the ACT theory of 1976) combines production rules with declarative memory chunks whose activation predicts human reaction times and errors [56]. These systems are used today mainly in cognitive science, human-factors modelling and simulation, not in commercial AI products. Cognitive architectures, in depth →

4.10 Symbolic machine learning

Symbolic machine learning learns models that are themselves symbolic: rules, trees, logic programs, formulas. Mitchell’s version spaces (1977) framed learning as search through a space of hypotheses [57]; Quinlan’s ID3 (1986) and C4.5 (1993) grew decision trees [58]; AQ (Michalski, 1969) and CN2 (Clark and Niblett, 1989) induced rules. Explanation-based learning (1986) generalised from a single example by explaining it with domain knowledge [59].

Inductive logic programming (Muggleton, 1991, with systems such as FOIL, Progol and Aleph) learns Prolog clauses from examples plus background knowledge [60]. Case-based reasoning reuses past cases through Aamodt and Plaza’s retrieve–reuse–revise–retain cycle [61]; structure-mapping (Gentner, 1983) models analogy [62]. Genetic programming (Koza, 1992) and symbolic regression search over programs and formulas [63] [64]. What these learners produce can be read and checked; the price is that they struggle with raw perception and noisy, high-dimensional data. Symbolic machine learning, in depth →

5. Which technique for which problem

A starting point, not a rulebook. Real systems combine several rows, and a problem that fits none of them cleanly, such as recognising objects in images, is usually a job for machine learning, with a symbolic technique checking the result.

Matching problems to symbolic AI techniques. Each technique links to its explanation.
problemreach forwhy
Shortest route or path, with a good distance estimateA*, IDA*Optimal with an admissible heuristic; IDA* when memory is tight.
Two-player game with a good evaluation functionalpha–beta pruningProven pruning; the classic chess approach.
Game or decision with no good evaluation functionMonte Carlo tree searchEstimates value by simulation; combines well with learned guidance.
A sequence of actions that reaches a goalPDDL, Fast DownwardDomain-independent: the model is the specification.
Tasks with known recipes, such as procedures or missionsHTN planningEncodes how experts break work down; faster and easier to control.
Timetabling, rostering, configurationconstraint satisfaction, constraint logic programmingConstraints are stated directly and propagation prunes early.
Large Boolean problems: circuits, package dependencies, puzzlesCDCL SAT solvingIndustrial-scale solvers; a satisfying assignment is easy to check.
Constraints over integers, reals, arrays or bit-vectorsSMTAdds theories to SAT; the usual back end for program verifiers.
Does this design satisfy a property over time?model checking, temporal logicExhaustive over a finite model; returns a counterexample trace.
Does this program meet its specification?Hoare logic, SMT-based verification, abstract interpretationFull correctness proofs, or scalable proof that a class of errors cannot occur.
A proof that must be trusted completelyproof assistantsA small trusted kernel checks every step.
Deriving facts from rules over a databaseDatalogAlways terminates; its fixed point is complete, so absence means not derivable.
Choices with defaults and exceptionsanswer set programming, default logicNon-monotonic rules combined with combinatorial search.
Written policy: eligibility, pricing, complianceproduction rules, ReteRules map one-to-one to policy clauses; changes stay local.
A shared vocabulary with consistency checkingOWL, description logicsDecidable reasoning; detects contradictions and classifies concepts.
Facts about many entities from many sourcesknowledge graphs, RDFSimple triples at very large scale.
Beliefs that must be withdrawn when evidence changestruth maintenance systems, ATMSKeeps the reasons for every belief.
Readable rules from few examples plus background knowledgeinductive logic programmingLearns relational rules a person can check.
An explainable classifier for tabular dataC4.5, ID3The model is a readable tree, fitted to data.
The equation behind a set of measurementssymbolic regressionThe output is a formula, not a black box.
Modelling how people perform a taskACT-R, SoarPredicts timing and errors, not just outcomes.

6. Where the techniques break

The same four problems recur across every family, and they are the reason symbolic AI lost ground to machine learning for perception and language. They are covered in depth on the pillar page; here is where each one bites.

7. Symbolic techniques and fail-safe models

A fail-safe model is an AI model built so that when it fails, the failure drives it toward a controlled, safe state: it abstains when evidence is missing, and its learning can narrow what it does but never widen what it is authorised to do. Several techniques in the master table supply exactly the parts such a model needs.

None of these makes a system fail-safe on its own. The property depends on authority: whether the symbolic layer decides what counts as true and what may be done, or merely advises a model that can ignore it. A model may propose; only the floor admits a fact. The techniques also bring their limits with them (§6). A symbolic floor is only as good as its sources and rules, so a fail-safe model built from these parts will say “unknown” more often than a model that guesses. That is the intended trade. Our papers The Orchestration Gap and Traversing Data in Symbolic Systems make the argument in more detail.

Peel, by Perslis Research, is built on this principle. To our knowledge it is the first fail-safe model; the exact claim and the closest earlier work are on What is a fail-safe model? There is no neural network in the loop that decides; knowledge is typed, sourced cards; and learning is readable counts. Peel is a research prototype, not a certified safety system. How Perslis uses symbolic methods is described on Symbolic AI at Perslis, and the related explainers on symbolic systems and symbolic flows cover the representation and pipeline side.

8. Questions

What are the main symbolic AI techniques?
They fall into ten families: logic programming and theorem proving, formal verification and program synthesis, search algorithms, AI planning, constraint satisfaction with SAT and SMT solving, knowledge representation, non-monotonic reasoning, expert systems, cognitive architectures, and symbolic machine learning. Well-known individual techniques include resolution, Prolog, A*, alpha-beta pruning, STRIPS, frames, the Rete algorithm, DPLL and CDCL, and inductive logic programming.
What was the first symbolic AI technique?
The first program built as artificial intelligence, the Logic Theorist of 1956 by Allen Newell, Cliff Shaw and Herbert Simon, proved theorems by heuristic search, and their General Problem Solver introduced means-ends analysis. Some of the tools are older than the field: propositional logic goes back to George Boole in 1847, first-order logic to Gottlob Frege in 1879, and the minimax principle to John von Neumann in 1928.
Which symbolic AI techniques are still used today?
Many, usually without the AI label. SAT and SMT solvers, model checking and abstract interpretation verify hardware and software; A* and its descendants plan paths; alpha-beta search and Monte Carlo tree search play games; PDDL planners schedule operations; Datalog and answer set programming solve database and combinatorial problems; Rete-based engines such as Drools run business rules; OWL ontologies and knowledge graphs organise data; and proof assistants such as Lean, Rocq and Isabelle check mathematics and verified software.
Is A* search symbolic AI?
Yes. A* searches a space of explicit, discrete states connected by named operators, and its guarantee is a proof: if the heuristic never overestimates the remaining cost, the first goal A* expands is on an optimal path. It was published in 1968 by Peter Hart, Nils Nilsson and Bertram Raphael and remains one of the most widely used symbolic AI techniques, in games, robotics and route planning.
What is the difference between SAT and SMT solvers?
A SAT solver decides whether a formula over true-or-false variables can be satisfied. An SMT solver, short for satisfiability modulo theories, does the same for formulas that also mention integers, real numbers, arrays, bit-vectors or other data types, by combining a SAT solver with a specialised decision procedure for each theory. Z3 and cvc5 are widely used SMT solvers.
What is the difference between forward chaining and backward chaining?
Forward chaining starts from the known facts and fires every rule whose conditions hold, adding conclusions until nothing new appears; production-rule engines work this way. Backward chaining starts from a question and works back to the facts that would prove it, turning each rule's conditions into sub-goals; Prolog and the MYCIN expert system work this way.
Are decision trees symbolic AI?
The model is symbolic: a decision tree is a readable set of if-then tests. The way it is built is statistical: algorithms such as ID3 and C4.5 choose each split by measuring information gain on data. That is why decision trees, rule induction and inductive logic programming are grouped together as symbolic machine learning.
How do symbolic AI techniques relate to neuro-symbolic AI?
Neuro-symbolic systems combine a neural network with one or more of these techniques. AlphaGo guided Monte Carlo tree search with neural networks, AlphaGeometry paired a language model with a symbolic deduction engine, and language models that call solvers, databases or proof checkers use SAT, SMT, Datalog or theorem proving as the exact half of the system.

9. References

  1. S. Russell, P. Norvig. Artificial Intelligence: A Modern Approach, 4th ed. Pearson, 2020.
  2. J. A. Robinson. A Machine-Oriented Logic Based on the Resolution Principle. Journal of the ACM 12(1):23–41, 1965. doi:10.1145/321250.321253
  3. R. Kowalski. Predicate Logic as Programming Language. Proceedings of IFIP Congress 74, 569–574, 1974.
  4. A. Colmerauer, P. Roussel. The Birth of Prolog. In History of Programming Languages II, ACM, 1996. doi:10.1145/234286.1057820
  5. M. Gelfond, V. Lifschitz. The Stable Model Semantics for Logic Programming. Proceedings of the 5th International Conference and Symposium on Logic Programming, MIT Press, 1070–1080, 1988.
  6. C. A. R. Hoare. An Axiomatic Basis for Computer Programming. Communications of the ACM 12(10):576–580, 1969.
  7. E. M. Clarke, E. A. Emerson. Design and Synthesis of Synchronization Skeletons Using Branching Time Temporal Logic. Logics of Programs Workshop 1981, LNCS 131, Springer, 1982.
  8. J.-P. Queille, J. Sifakis. Specification and Verification of Concurrent Systems in CESAR. International Symposium on Programming, LNCS 137, Springer, 1982.
  9. P. Cousot, R. Cousot. Abstract Interpretation: A Unified Lattice Model for Static Analysis of Programs by Construction or Approximation of Fixpoints. POPL 1977, 238–252.
  10. D. E. Knuth, P. B. Bendix. Simple Word Problems in Universal Algebras. In J. Leech (ed.), Computational Problems in Abstract Algebra, Pergamon, 263–297, 1970.
  11. Z. Manna, R. Waldinger. A Deductive Approach to Program Synthesis. ACM Transactions on Programming Languages and Systems 2(1):90–121, 1980.
  12. S. Gulwani. Automating String Processing in Spreadsheets Using Input-Output Examples. POPL 2011. doi:10.1145/1926385.1926423
  13. X. Leroy. Formal Verification of a Realistic Compiler. Communications of the ACM 52(7):107–115, 2009.
  14. G. Klein et al. seL4: Formal Verification of an OS Kernel. SOSP 2009; extended in ACM Transactions on Computer Systems 32(1), 2014. doi:10.1145/2560537
  15. P. E. Hart, N. J. Nilsson, B. Raphael. A Formal Basis for the Heuristic Determination of Minimum Cost Paths. IEEE Transactions on Systems Science and Cybernetics 4(2):100–107, 1968.
  16. R. E. Korf. Depth-First Iterative-Deepening: An Optimal Admissible Tree Search. Artificial Intelligence 27(1):97–109, 1985.
  17. D. E. Knuth, R. W. Moore. An Analysis of Alpha-Beta Pruning. Artificial Intelligence 6(4):293–326, 1975.
  18. R. Coulom. Efficient Selectivity and Backup Operators in Monte-Carlo Tree Search. Computers and Games 2006, LNCS 4630, Springer, 2007.
  19. L. Kocsis, C. Szepesvári. Bandit Based Monte-Carlo Planning. ECML 2006, LNCS 4212, Springer.
  20. D. Silver et al. Mastering the Game of Go with Deep Neural Networks and Tree Search. Nature 529:484–489, 2016.
  21. J. McCarthy, P. J. Hayes. Some Philosophical Problems from the Standpoint of Artificial Intelligence. In Machine Intelligence 4, Edinburgh University Press, 1969.
  22. R. E. Fikes, N. J. Nilsson. STRIPS: A New Approach to the Application of Theorem Proving to Problem Solving. Artificial Intelligence 2(3–4):189–208, 1971.
  23. A. L. Blum, M. L. Furst. Fast Planning Through Planning Graph Analysis. Artificial Intelligence 90(1–2):281–300, 1997 (IJCAI 1995).
  24. H. Kautz, B. Selman. Planning as Satisfiability. ECAI 1992, 359–363.
  25. D. McDermott et al. PDDL: The Planning Domain Definition Language. Technical report, Yale Center for Computational Vision and Control, 1998.
  26. M. Helmert. The Fast Downward Planning System. Journal of Artificial Intelligence Research 26:191–246, 2006. doi:10.1613/jair.1705
  27. U. Montanari. Networks of Constraints: Fundamental Properties and Applications to Picture Processing. Information Sciences 7:95–132, 1974. doi:10.1016/0020-0255(74)90008-5
  28. A. K. Mackworth. Consistency in Networks of Relations. Artificial Intelligence 8(1):99–118, 1977.
  29. J. Jaffar, J.-L. Lassez. Constraint Logic Programming. POPL 1987, 111–119.
  30. S. A. Cook. The Complexity of Theorem-Proving Procedures. STOC 1971, 151–158.
  31. M. Davis, G. Logemann, D. Loveland. A Machine Program for Theorem-Proving. Communications of the ACM 5(7):394–397, 1962. doi:10.1145/368273.368557
  32. J. P. Marques-Silva, K. A. Sakallah. GRASP: A Search Algorithm for Propositional Satisfiability. IEEE Transactions on Computers 48(5):506–521, 1999 (ICCAD 1996).
  33. M. W. Moskewicz, C. F. Madigan, Y. Zhao, L. Zhang, S. Malik. Chaff: Engineering an Efficient SAT Solver. DAC 2001. doi:10.1145/378239.379017
  34. L. de Moura, N. Bjørner. Z3: An Efficient SMT Solver. TACAS 2008, LNCS 4963. doi:10.1007/978-3-540-78800-3_24
  35. M. R. Quillian. Semantic Memory. In M. Minsky (ed.), Semantic Information Processing, MIT Press, 1968.
  36. M. Minsky. A Framework for Representing Knowledge. MIT AI Laboratory Memo 306, 1974.
  37. R. C. Schank, R. P. Abelson. Scripts, Plans, Goals and Understanding. Lawrence Erlbaum, 1977.
  38. J. F. Sowa. Conceptual Graphs for a Data Base Interface. IBM Journal of Research and Development 20(4):336–357, 1976.
  39. R. J. Brachman, J. G. Schmolze. An Overview of the KL-ONE Knowledge Representation System. Cognitive Science 9(2):171–216, 1985.
  40. T. R. Gruber. A Translation Approach to Portable Ontology Specifications. Knowledge Acquisition 5(2):199–220, 1993.
  41. R. Reiter. A Logic for Default Reasoning. Artificial Intelligence 13(1–2):81–132, 1980.
  42. J. McCarthy. Circumscription: A Form of Non-Monotonic Reasoning. Artificial Intelligence 13(1–2):27–39, 1980.
  43. R. C. Moore. Semantical Considerations on Nonmonotonic Logic. Artificial Intelligence 25(1):75–94, 1985.
  44. K. L. Clark. Negation as Failure. In H. Gallaire, J. Minker (eds.), Logic and Data Bases, Plenum, 293–322, 1978.
  45. J. Doyle. A Truth Maintenance System. Artificial Intelligence 12(3), 1979.
  46. J. de Kleer. An Assumption-Based TMS. Artificial Intelligence 28(2):127–162, 1986.
  47. R. Kowalski, M. Sergot. A Logic-Based Calculus of Events. New Generation Computing 4(1):67–95, 1986.
  48. E. H. Shortliffe, B. G. Buchanan. A Model of Inexact Reasoning in Medicine. Mathematical Biosciences 23(3–4):351–379, 1975.
  49. A. N. Campbell, V. F. Hollister, R. O. Duda, P. E. Hart. Recognition of a Hidden Mineral Deposit by an Artificial Intelligence Program. Science 217(4563):927–929, 1982. doi:10.1126/science.217.4563.927
  50. J. McDermott. R1: A Rule-Based Configurer of Computer Systems. Artificial Intelligence 19(1):39–88, 1982.
  51. C. L. Forgy. Rete: A Fast Algorithm for the Many Pattern/Many Object Pattern Match Problem. Artificial Intelligence 19(1):17–37, 1982.
  52. E. A. Feigenbaum. The Art of Artificial Intelligence: Themes and Case Studies of Knowledge Engineering. IJCAI 1977.
  53. L. D. Erman, F. Hayes-Roth, V. R. Lesser, D. R. Reddy. The Hearsay-II Speech-Understanding System: Integrating Knowledge to Resolve Uncertainty. ACM Computing Surveys 12(2):213–253, 1980. doi:10.1145/356810.356816
  54. J. E. Laird, A. Newell, P. S. Rosenbloom. SOAR: An Architecture for General Intelligence. Artificial Intelligence 33(1):1–64, 1987. doi:10.1016/0004-3702(87)90050-6
  55. J. E. Laird, P. S. Rosenbloom, A. Newell. Chunking in Soar: The Anatomy of a General Learning Mechanism. Machine Learning 1(1):11–46, 1986.
  56. J. R. Anderson. Rules of the Mind. Lawrence Erlbaum, 1993.
  57. T. M. Mitchell. Generalization as Search. Artificial Intelligence 18(2):203–226, 1982.
  58. J. R. Quinlan. Induction of Decision Trees. Machine Learning 1(1):81–106, 1986.
  59. T. M. Mitchell, R. M. Keller, S. T. Kedar-Cabelli. Explanation-Based Generalization: A Unifying View. Machine Learning 1(1):47–80, 1986.
  60. S. Muggleton. Inductive Logic Programming. New Generation Computing 8(4):295–318, 1991.
  61. A. Aamodt, E. Plaza. Case-Based Reasoning: Foundational Issues, Methodological Variations, and System Approaches. AI Communications 7(1):39–59, 1994.
  62. D. Gentner. Structure-Mapping: A Theoretical Framework for Analogy. Cognitive Science 7(2):155–170, 1983.
  63. J. R. Koza. Genetic Programming: On the Programming of Computers by Means of Natural Selection. MIT Press, 1992.
  64. M. Schmidt, H. Lipson. Distilling Free-Form Natural Laws from Experimental Data. Science 324(5923):81–85, 2009.