We introduce ALBI (Agent for Learning By Induction), a neuro-symbolic ILP framework that replaces the ASP-based hypothesis generator in the Learning from Failures (LFF) paradigm with a Large Language Model (LLM), while retaining SWI-Prolog as a formal verifier. ALBI implements an iterative generate-test-constrain loop: the LLM proposes candidate hypotheses from structured prompts; Prolog tests each candidate; and diagnostic feedback drives refinement. We further introduce semantic anonymization, a metamorphic testing methodology, to distinguish structural symbolic induction from surface-level pattern matching on predicate names. Experiments on 30 standard ILP benchmarks show that ALBI achieves 100% success across three frontier LLMs (Gemini 3.1 Pro, GPT 5.4 Pro, Claude Opus 4.6), matching Popper while requiring only 1.4-1.7 iterations on average. Under anonymization, all models maintain 100% success with a moderate iteration increase (1.36-1.67 times), providing evidence of robust symbolic reasoning.
Figures & tables
Figure 1: The ALBI framework architecture.
Model
τ
Reasoning Mode
Max Out
Gemini 3.1 Pro
0.0
Thinking: high
Default
Claude Opus 4.6
1.0
Ext. thinking (112K)
128K
GPT 5.4 Pro
–
Effort: high
48K
Table 1: LLM API configurations.
System
Succ. (%)
Iter.
Time (s)
Clauses
Popper (ASP)
100.0
6.8
81.8
2.7
ALBI + Gemini 3.1 Pro
100.0
1.7
333.6
2.8
ALBI + GPT 5.4 Pro
100.0
1.4
1631.9
2.8
ALBI + Claude Opus 4.6
100.0
1.5
397.7
2.9
Table 2: Overall performance across 30 semantic benchmark tasks.
System
Applicable
Optimized
Rate (%)
Literals Reduced
ALBI + Gemini
15/30
4/30
13.3
− 26
ALBI + Claude
15/30
1/30
3.3
− 7
ALBI + GPT 5.4 Pro
12/30
12/30
40.0
− 87
Table 3: Optimization effectiveness across models.
Semantic
Anonymized
System
Succ. (%)
Iter.
Succ. (%)
Iter.
ALBI + Gemini
100.0
1.7
100.0
2.6
ALBI + GPT 5.4 Pro
100.0
1.4
100.0
1.9
ALBI + Claude
100.0
1.5
100.0
2.5
Table 4: Effect of semantic anonymization on success rate (%) and average iterations.
Figure 2: Per-task iteration counts (semantic vs. anonymized). Tasks on X-axis; model × condition on Y-axis. Green = single-iteration; darker = harder. Dashed lines separate domains.
Figure 3: Wall-clock time and literal count vs. iteration count per system.