Context-Free Grammar Inference for Complex Programming Languages in Black Box Settings

Fuente: arXiv
Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Li, Feifei, Chen, Xiao, Sun, Xiaoyu, Xiao, Xi, Wang, Shaohua, Ding, Yong, Wen, Sheng, Li, Qing
Format: Preprint
Veröffentlicht: 2026
Schlagworte:
Online-Zugang:
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
_version_ 1866915737686245376
author Li, Feifei
Chen, Xiao
Sun, Xiaoyu
Xiao, Xi
Wang, Shaohua
Ding, Yong
Wen, Sheng
Li, Qing
author_facet Li, Feifei
Chen, Xiao
Sun, Xiaoyu
Xiao, Xi
Wang, Shaohua
Ding, Yong
Wen, Sheng
Li, Qing
contents Grammar inference for complex programming languages remains a significant challenge, as existing approaches fail to scale to real world datasets within practical time constraints. In our experiments, none of the state-of-the-art tools, including Arvada, Treevada and Kedavra were able to infer grammars for complex languages such as C, C++, and Java within 48 hours. Arvada and Treevada perform grammar inference directly on full-length input examples, which proves inefficient for large files commonly found in such languages. While Kedavra introduces data decomposition to create shorter examples for grammar inference, its lexical analysis still relies on the original inputs. Additionally, its strict no-overgeneralization constraint limits the construction of complex grammars. To overcome these limitations, we propose Crucio, which builds a decomposition forest to extract short examples for lexical and grammar inference via a distributional matrix. Experimental results show that Crucio is the only method capable of successfully inferring grammars for complex programming languages (where the number of nonterminals is up to 23x greater than in prior benchmarks) within reasonable time limits. On the prior simple benchmark, Crucio achieves an average recall improvement of 1.37x and 1.19x over Treevada and Kedavra, respectively, and improves F1 scores by 1.21x and 1.13x.
format Preprint
id arxiv_https___arxiv_org_abs_2601_12385
institution arXiv
publishDate 2026
record_format arxiv
spellingShingle Context-Free Grammar Inference for Complex Programming Languages in Black Box Settings
Li, Feifei
Chen, Xiao
Sun, Xiaoyu
Xiao, Xi
Wang, Shaohua
Ding, Yong
Wen, Sheng
Li, Qing
Programming Languages
Grammar inference for complex programming languages remains a significant challenge, as existing approaches fail to scale to real world datasets within practical time constraints. In our experiments, none of the state-of-the-art tools, including Arvada, Treevada and Kedavra were able to infer grammars for complex languages such as C, C++, and Java within 48 hours. Arvada and Treevada perform grammar inference directly on full-length input examples, which proves inefficient for large files commonly found in such languages. While Kedavra introduces data decomposition to create shorter examples for grammar inference, its lexical analysis still relies on the original inputs. Additionally, its strict no-overgeneralization constraint limits the construction of complex grammars. To overcome these limitations, we propose Crucio, which builds a decomposition forest to extract short examples for lexical and grammar inference via a distributional matrix. Experimental results show that Crucio is the only method capable of successfully inferring grammars for complex programming languages (where the number of nonterminals is up to 23x greater than in prior benchmarks) within reasonable time limits. On the prior simple benchmark, Crucio achieves an average recall improvement of 1.37x and 1.19x over Treevada and Kedavra, respectively, and improves F1 scores by 1.21x and 1.13x.
title Context-Free Grammar Inference for Complex Programming Languages in Black Box Settings
topic Programming Languages
url https://arxiv.org/abs/2601.12385