Term Encoding of Typed Feature Structures

Dale Gerdemann
DOI: https://doi.org/10.48550/arXiv.cmp-lg/9512005
1995-12-22
Abstract:This paper presents an approach to Prolog-style term encoding of typed feature structures. The type feature structures to be encoded are constrained by appropriateness conditions as in Carpenter's ALE system. But unlike ALE, we impose a further independently motivated closed-world assumption. This assumption allows us to apply term encoding in cases that were problematic for previous approaches. In particular, previous approaches have ruled out multiple inheritance and further specification of feature-value declarations on subtypes. In the present approach, these spececial cases can be handled as well, though with some increase in complexity. For grammars without multiple inheritance and specification of feature values, the encoding presented here reduces to that of previous approaches.
Computation and Language
What problem does this paper attempt to address?
The problem that this paper attempts to solve is: how to represent typed feature structure grammars in Prolog term encoding to ensure that each feature structure is well - typed and can be extended to the maximally specific well - typed feature structure. Specifically, the paper explores multiple methods to achieve this goal, especially when dealing with multiple inheritance and feature - value declarations, avoiding imposing additional restrictions on the grammar. ### Main problem decomposition: 1. **Ensuring well - typed feature structures**: - Each feature structure must satisfy the appropriateness specification, that is, for each feature \( f \) and type \( t \) on a node, the feature value must be included in \( \text{Approp}(t, f) \). - The feature structure must be able to be extended to a fully well - typed and type - resolved feature structure. 2. **Handling multiple inheritance**: - The traditional types - as - paths encoding method cannot uniquely represent types with multiple inheritance. - The paper proposes to solve the problem by compiling out multiple inheritance, that is, compiling multiple inheritance into discrete possibilities. 3. **Reducing disjunctions**: - In some cases, in order to ensure the satisfiability of the feature structure, it is necessary to introduce disjunctions. - The introduction of disjunctions may lead to an exponential growth in the size of the grammar, so effective compression techniques such as unextension and unfilling are required. 4. **Efficiently representing disjunctions**: - Use distributed disjunctions or named disjunctions to efficiently represent the remaining disjunctions. ### Solution overview: - **Types - as - paths Encoding**: Represent types as paths through the type hierarchy to reach that type. This method allows feature information to be bundled with the type that introduced the feature, but there is a multiple inheritance problem. - **Compiling out multiple inheritance**: Solve the representation problem brought by multiple inheritance by deleting intermediate types and introducing appropriate disjunction conditions. - **Unextension**: Reduce the number of disjunctions by replacing the type on a node with a more general type. - **Unfilling**: Remove those feature - value pairs that do not provide additional information to further reduce disjunctions. - **Distributed disjunctions**: Use distributed disjunctions to represent a set of feature structures that have the same shape but different node labels. ### Summary: The main contribution of the paper is to provide a method for representing typed feature structures in Prolog term encoding, ensuring that these structures are well - typed and can handle multiple inheritance and feature - value declarations by introducing appropriate disjunction conditions. At the same time, the paper proposes several techniques for reducing and efficiently representing disjunctions, thereby improving the efficiency of processing complex grammars.