--- license: apache-2.0 library_name: resyn pipeline_tag: text-generation tags: - regex - regex-synthesis - program-synthesis - pytorch - model_hub_mixin - pytorch_model_hub_mixin - set2regex datasets: - mrseongminkim/ReSyn --- # ReSyn — Set2Regex This repository contains the pre-trained **Set2Regex** model presented in the paper [ReSyn: A Generalized Recursive Regular Expression Synthesis Framework](https://huggingface.co/papers/2603.24624). ReSyn is a synthesizer-agnostic divide-and-conquer framework that decomposes complex regular expression synthesis problems into manageable sub-problems by adaptively predicting whether to split examples sequentially (Concatenation) or group them by structural similarity (Union). **Set2Regex** is the core neural synthesizer. Given a set of positive and negative example strings, it autoregressively generates a regular expression that matches every positive string and rejects every negative string. It encodes the example set with a hierarchical (character-level then string-level) Transformer and decodes the regex with set- and string-conditioned Transformer decoders. Greedy, top-k/top-p sampling, and beam search decoding are supported (see `predict`). ## Links - **Paper:** [ReSyn: A Generalized Recursive Regular Expression Synthesis Framework](https://huggingface.co/papers/2603.24624) - **GitHub Repository:** [mrseongminkim/ReSyn](https://github.com/mrseongminkim/ReSyn) - **Dataset:** [mrseongminkim/ReSyn](https://huggingface.co/datasets/mrseongminkim/ReSyn) ## Usage These are custom PyTorch models that use [`PyTorchModelHubMixin`](https://huggingface.co/docs/huggingface_hub/package_reference/mixins#huggingface_hub.PyTorchModelHubMixin). The model class is defined in the [GitHub repository](https://github.com/mrseongminkim/ReSyn); clone it first so that the `ReSyn` package is importable, then: ```python from ReSyn.model import Set2Regex model = Set2Regex.from_pretrained("mrseongminkim/ReSyn-Set2Regex").eval() ``` See [`ReSyn/server.py`](https://github.com/mrseongminkim/ReSyn/blob/main/ReSyn/server.py) for the full input encoding / output decoding used at inference time. ## Citation If you find this work useful, please cite: ```bibtex @inproceedings{kim2026resyn, title={ReSyn: A Generalized Recursive Regular Expression Synthesis Framework}, author={Kim, Seongmin and Cheon, Hyunjoon and Kim, Su-Hyeon and Han, Yo-Sub and Ko, Sang-Ki}, booktitle={Proceedings of the Thirty-Fifth International Joint Conference on Artificial Intelligence (IJCAI-26)}, year={2026} } ```