Knowledge representation (KR) aims to model information in a structured manner to formally represent it as knowledge in knowledge-based systems. Knowledge representation and reasoning (KRR) aims to also understand, reason, and interpret knowledge. KRR is widely used in the field of artificial intelligence with the goal to represent information about the world in a form that a computer system can use to solve complex tasks, such as diagnosing a medical condition or having a natural-language dialog. Early KRR systems included the [[expert system]] and knowledge-based systems. A knowledge representation framework can be analyzed by these five roles. A knowledge representation (KR) is [^1] 1. a surrogate, a substitute for the thing itself 2. a set of ontological commitments: an answer to the question: In what terms should I think about the world? 3. a fragmentary theory of intelligent reasoning, expressed in terms of three components: (i) the representation's fundamental conception of intelligent reasoning; (ii) the set of inferences the representation sanctions; and (iii) the set of inferences it recommends 4. a medium for pragmatically efficient computation 5. a medium of human expression [^1]: Davis, Randall; Shrobe, Howard; Szolovits, Peter (Spring 1993). ["What Is a Knowledge Representation?"](http://www.aaai.org/ojs/index.php/aimagazine/article/view/1029/947). _AI Magazine_. **14** (1): 17–33. [Archived](https://web.archive.org/web/20120406094445/http://www.aaai.org/ojs/index.php/aimagazine/article/view/1029/947) from the original on 2012-04-06. Retrieved 2011-03-23. One of the most active areas of knowledge representation research is the [[Semantic Web]]. ## expressivity-tractability tradeoff A key trade-off in the design of [[knowledge representation]] formalisms is that between expressivity and tractability.[^1] A highly expressive formalism may provide many ways of stating the same fact and create difficulty in querying whereas a highly tractable formalism will invariably oversimplify reality but is easier to use and requires less compute. Another way of describing this is expressive adequacy versus reasoning efficiency or expressiveness versus decidability. [^1]: Levesque, H.J. and Brachman, R.J., 1987. Expressiveness and tractability in knowledge representation and reasoning 1. Computational intelligence, 3(1), pp.78-93. ## expert system An expert system is a computer system emulating the decision-making ability of a human expert. Expert systems were among the first truly successful forms of [[artificial intelligence]]. Expert systems typically represent logic in the form of if-then statements and knowledge in the form of a knowledge base. The system can then reason through a body of knowledge in much the same way a human would. Diagnostic systems for medicine and biology were early targets of expert systems. Expert systems gave us the terminology still in use today where AI systems are divided into a [[knowledge base]], which includes facts and rules about a problem domain, and an [[inference engine]], which applies the knowledge in the knowledge base to answer questions and solve problems in the domain. Expert systems have now been folded into the more broad **rule-based system** category. ## semantic network [Semantic networks](https://en.wikipedia.org/wiki/Semantic_network) are the knowledge representation primitives of a [[knowledge graph]]. Some authors[^1] distinguish between semantic networks and knowledge graphs, where semantic networks are typically smaller, encoding complex rules and ontologies in a human-made design. [^1]: [[chaudhri2022|Knowledge graphs Introduction history and perspectives]] ## semantic technology Semantic technologies are a suite of technologies intended to help machines understand data by representing meaning ([[semantics]]). Semantic technologies provide an abstraction layer above existing information technologies that enable bridging and interconnection of data, content, and processes. The [[semantic layer]] and [[semantic network]] is an example of a semantic technology. ## semantic computing [Semantic computing](https://en.wikipedia.org/wiki/Semantic_computing) is a field of computing that combines elements of semantic analysis, [[natural language processing]], [[data mining]], [[knowledge graph]], and related fields. See also [[knowledge computing]]. ## knowledge computing Knowledge computing, a term coined by [[knowledge representation]] researcher Jeff Pan, was heralded by the invention of the [[large language model]]. LLMs introduced the idea that knowledge could be represented implicitly in the parameters of the model, rather than explicitly in knowledge bases and similar [[semantic technology|semantic technologies]]. ## ELIZA ELIZA was an early (MIT, 1964-1967) [[natural language processing]] technology for simulating conversations between humans and machines. A famous script emulated the [[Rogerian school]] of psychotherapy, in which the therapist often reflects back the patients words). It represents one of the first chatbots. The Eliza effect, named after user reactions to this system, describes when users attribute human-like feelings to a computer program. ## history of Early on developers recognized that the human capacity to reason through tasks depends on a wealth of learned experience that might seem, at first, unrelated to the domain. In some ways, LLMs have encoded this baseline as parametric knowledge. Language stores more than just words. Even if you grant only the stochastic parrot analogy, global facts, relationships, etc. are encoded in which words come after the other. The ability to break down a problem into subproblems (Chain of Thought, Tree of Thought) enriches the ability to reason along the lines of language. However, Anthropic in recent research has revealed that there might be something more going on in these models. Shape of knowledge. Inductive link prediction is a way to generate new facts given an existing KG. Like the periodic table of elements, the structure of existing knowledge can point to gaps and suggest facts.