! Development Status: 3 – Alpha: The codebase is still under active development, with several features missing features and potential API modifications. Use at your own risk. !
SymSeq is a Python library for defining, generating, and analyzing symbolic sequences. It contains core data structures for grammar and sequence generation, a diverse library of artificial language generators, interfaces for parsing user-supplied data, and a comprehensive suite of analysis metrics spanning multiple structural and linguistic scales.
Together with SeqBench, SymSeq forms a unified framework for symbolic sequence processing and benchmarking. A high-level overview of the combined framework and its capabilities can be found in the accompanying SymSeqBench paper.
- Free software: MIT license
- Documentation: https://symseq.readthedocs.io/
- Symbolic Sequence Generation: Core algorithms for creating rule-based symbolic sequences.
- Configurable Parameters: Flexible options to control sequence properties.
- Metrics & Analysis: Tools to analyze generated sequences (e.g., complexity, statistical properties).
- Extensible Task Framework: Define custom tasks or experiments.
- Command-Line Interface: Utilities for generating and managing sequences from the terminal.
uv is an extremely fast Python package installer and resolver that greatly simplifies installation and dependency management.
- Install
uv:
pip install uv
# or
pipx install uv- Install
symseq:
uv pip install symseq- Clone the repository:
git clone https://github.com/symseqbench/symseq.git
cd symseq- Create and activate a virtual environment:
uv venv
source .venv/bin/activate # Unix/macOS
# or
.venv\\Scripts\\activate # Windows- Install development dependencies:
uv pip install -e ".[dev]"This project is licensed under the MIT License - see the LICENSE file for details.
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Please ensure your code follows appropriate coding standards and includes appropriate tests.
If you use the SymSeq library, please cite our paper.
This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.