CLP-Driven Automata Induction: A Logic-Based Approach to Text Mining
Using CLP to Characterise Linguistic Lattice Boundaries in a Text Mining Process
The paper introduces a Textual Data Mining approach using Constraint Logic Programming (CLP) to characterize linguistic patterns in semi-structured documents. It focuses on inducing a minimal Deterministic Finite Automaton (DFA) that generalizes from positive and negative sentence samples.
TL;DR
This paper presents a formal framework for Textual Data Mining that leverages Constraint Logic Programming (CLP) to induce minimal Deterministic Finite Automata (DFA). By analyzing semi-structured documents (like seminar announcements) through the lens of language inclusion lattices, the author provides a method to generalize grammatical structures from positive and negative examples while maintaining strict logical constraints.
Problem & Motivation: The Tug-of-War in Text Generalization
Text Mining aims to extract hidden structures from databases where information is "semi-structured." A common example is identifying the "Subject" or "Date" in a raw text announcement.
The fundamental challenge in Information Extraction (IE) is finding the right boundary in the Language Inclusion Lattice. If a model is too specific, it only recognizes the exact strings it has seen; if it is too general, it accepts "noise" or invalid syntax. Previous work often struggled to find the "minimal" representation that accurately separates valid sentences () from invalid ones ().
The author's intuition is that this search for an optimal automaton is essentially a Constraint Satisfaction Problem (CSP).
Methodology: Mining with Constraints
The core of Saidi's approach is the transformation of a prefix tree of automata into a minimal DFA using CLP rules.
1. The Search Lattice
The search space is conceptualized as a lattice where the top element is (all possible strings) and the bottom is the empty language. The task is to find an automaton such that and .

2. The Congruence Predicate
Using GNU Prolog, the author defines state equivalence classes . Every transition creates constraints in the store . The three golden rules defined are:
- State Separation: If two states lead to a final state for a positive sample vs. a negative sample, they MUST be different.
- DFA Condition: If the inputs are the same, the resulting states must be merged to maintain determinism.
- Lexeme Distinction: If inputs are different, the states are kept distinct to prevent over-generalization.

Experiments & Practical Application
The system was applied to real-world corpora of announcement texts. The process follows a specific pipeline:
- Segmentation: Texts are broken into sections (Name, Address, Salary).
- Tree Construction: A prefix tree is built for each section.
- Constraint Solving: The CLP predicates collapse the tree into a minimal DFA.
- Template Filling: Summaries are generated as structured database slots.
For complex syntax, the author utilizes Definite Clause Grammars (DCG) to perform preliminary partial analysis, showing the flexibility of the logic-programming paradigm.
Critical Analysis & Conclusion
Takeaway
The use of CLP allows for a "declarative" approach to machine learning. Instead of iterative optimization (like gradient descent), the model finds a solution by satisfying a set of hard logical boundaries. This is particularly powerful for zero-error tasks where certain negative samples must never be accepted.
Limitations
- Computational Complexity: Constraint solving in huge search spaces can be slow compared to modern neural approaches.
- Regular Language Limit: The paper explicitly stays within the bounds of regular languages. It cannot handle context-free structures () without significant modification.
Future Outlook
The author plans to port these logic-based systems into imperative languages like C++ or Java to enhance performance, suggesting a hybrid future where the rigorous logic of CLP meets the efficiency of industrial software engineering.
