CircuitSynth: Reliable Synthetic Data Generation
Organizations: Department of Computer Science, University of Oxford · Institute of Logic and Computation, TU Wien
Abstract
The generation of high-fidelity synthetic data is a cornerstone of modern machine learning, yet Large Language Models (LLMs) frequently suffer from hallucinations, logical inconsistencies, and mode collapse when tasked with structured generation. Existing approaches, such as prompting or retrieval-augmented generation, lack the mechanisms to balance linguistic expressivity with formal guarantees regarding validity and coverage. To address this, we propose CircuitSynth, a novel neuro-symbolic framework that decouples semantic reasoning from surface realization. By distilling the reasoning capabilities of a Teacher LLM into a Probabilistic Sentential Decision Diagram (PSDD), CircuitSynth creates a tractable semantic prior that structurally enforces hard logical constraints. Furthermore, we introduce a convex optimization mechanism to rigorously satisfy soft distributional goals. Empirical evaluations across diverse benchmarks demonstrate that CircuitSynth achieves 100% Schema Validity even in complex logic puzzles where unconstrained baselines fail (12.4%) while significantly outperforming state-of-the-art methods in rare-combination coverage.
Figures & tables
| Dataset | Method | SV (%) | Prec | CE | JS | RCC (%) | BPT | PPL |
|---|---|---|---|---|---|---|---|---|
| WebNLG (Standard) | Llama-3.1-8B | 76.4 | 0.82 | 0.22 | 0.38 | 15.2 | 2.65 | 12.1 |
| Qwen 2.5 7B | 79.1 | 0.84 | 0.20 | 0.35 | 16.8 | 2.58 | 11.5 | |
| Evol-Instruct | 82.5 | 0.79 | 0.18 | 0.31 | 19.4 | 2.71 | 12.8 | |
| GraphRAG | 91.2 | 0.89 | 0.15 | 0.25 | 26.5 | 2.38 | 10.9 | |
| TreeSynth | 96.8 | 0.91 | 0.14 | 0.21 | 35.2 | 2.29 | 9.8 | |
| ND-PSDD | 100.0 | 0.93 | 0.29 | 0.45 | 10.5 | 2.98 | 15.6 |
| Domain / Category | Source | Valid (Tree) | Valid (Ours) | Fact. (Tree) | Fact. (Ours) | JS (Tree) | JS (Ours) |
|---|---|---|---|---|---|---|---|
| Airport | WebNLG | 98.1 | 100.0 | 0.91 | 0.98 | 0.12 | 0.05 |
| Artist | WebNLG | 96.5 | 100.0 | 0.89 | 0.97 | 0.15 | 0.06 |
| Astronaut | WebNLG | 97.2 | 100.0 | 0.92 | 0.99 | 0.14 | 0.04 |
| Athlete | WebNLG | 95.8 | 100.0 | 0.88 | 0.97 | 0.18 | 0.07 |
| Building | WebNLG | 94.4 | 100.0 | 0.85 | 0.96 | 0.21 | 0.08 |
| CelestialBody | WebNLG | 96.1 | 100.0 | 0.90 | 0.98 | 0.16 | 0.05 |
| Method Variant | CVR (%) | KL | Latency (ms) | Mechanism Responsible |
|---|---|---|---|---|
| Teacher (Oracle) | 12.5 | 0.18 | - | Pure Prompting |
| CS-NoConst | 18.8 | 0.29 | 38 | Distillation Only |
| CS-Strict | 0.0 | 0.24 | 41 | Distillation + PSDD |
| CS-MarginalOnly | 14.2 | 0.08 | 40 | Distillation + Optim |
| CircuitSynth (Full) | 0.0 | 0.09 | 42 | All Components |
Synthetic Data Generation
Synthetic data generation creates artificial examples, simulations, and datasets to train, test, or protect machine-learning systems.
See all 609 papers