{"slug": "cql-categorical-databases", "title": "CQL: Categorical Databases", "summary": "Categorical Data Query Language (CQL), an open-source tool that uses category theory to query, combine, migrate, and evolve databases, is now production-ready for single-node in-memory data processing. The software, commercialized by Conexus AI, embeds an automated theorem prover to guarantee program correctness and preserve data quality by detecting errors at compile time. CQL generalizes SQL concepts with higher-level abstractions, enabling developers to integrate data for data science with zero degradation and perfect provenance.", "body_md": "# Categorical Databases\n\n[Home](https://categoricaldata.net)|\n\n[Download](download.html)|\n\n[Getting Started](examples.html)|\n\n[Manual](help/index.html)|\n\n[Wiki](https://github.com/CategoricalData/CQL/wiki)|\n\n[Papers](papers.html)|\n\n[Screen Shots](screens.html)|\n\n[Github](https://github.com/categoricalData)|\n\n[Google Group](https://groups.google.com/forum/#!forum/categoricaldata)|\n\n[Conexus AI](https://conexus.com)|\n\n[Contact](mailto:info@conexus.com)\n\n## A principled way to transform data\n\nOpen-source CQL and its integrated development environment (IDE) performs data-related tasks — such as querying, combining, migrating, and evolving databases — using [category theory](https://en.wikipedia.org/wiki/Applied_category_theory), a branch of mathematics that has revolutionized several areas of computer science. Open-source CQL is production-ready for single-node in-memory data processing workloads, such as [integrating data for data science](http://arxiv.org/abs/1903.10579). It is being commercialized by [Conexus AI](https://conexus.com); for inquiries, contact [Ryan Wisnesky](https://wisnesky.net).\n\n|\n\n## Value Proposition\n\n**Reduce risk of failure through artificial intelligence**. CQL contains an embedded automated theorem prover that guarantees the correctness of CQL programs. For example,[a CQL program cannot materialize an instance that violates a data integrity constraint](fk.html). Such errors are detected at compile time, when they are easiest to fix.**Preserve data quality**. High-quality data is expensive to obtain, so it is important to preserve that quality throughout the data life-cycle. CQL programs evolve and migrate data in a mathematically universal way, with zero degradation. As such, data integrated by CQL has many advantages, including perfect provenance:[every row in the output of an CQL program contains a lineage that describes exactly how that row was obtained from input data](joinless.html).**Increased developer productivity through higher-level abstractions**. CQL generalizes concepts from SQL using powerful principles from category theory. For example,[CQL generalizes SQL's select-from-where queries from returning single tables to returning many tables related by foreign keys](fk.html). Such higher-level abstractions enable developers to be more productive.\n\n## Key Features\n\n**Flexible I/O:** data can be imported into and exported out of CQL[by JDBC-SQL](jdbc.html), CSV, and more.**Visualization:** CQL[schemas](images/shot2.png),[databases](images/shot3.png), etc. can be displayed graphically.**Rich data integrity constraints:** CQL schemas contain entities, attributes, and foreign keys - as well as[equations between them](eqs.html). One use of equations is for[denormalization without the need to manually enforce the consistency of redundant data](denorm.html).**Computational schemas:**[user-defined functions are part of CQL schemas](unitconv.html)and can be specified using java, javascript, or purely equationally. CQL's theorem prover can reason about user-defined functions and how they relate to data integrity constraints.**More principled than SQL:** relational concepts such as[foreign keys re-appear, in a more principled form, in CQL](joinless.html). And[CQL provides primitives that SQL lacks](quotient.html).**100% java**. User-defined functions can be written in java or javascript, and a deep embedding of CQL into Haskell, in collaboration with[Statebox](https://statebox.org), is under development.**Stateless**. CQL is not a database management system: it neither stores nor updates data. It is a[canonical functional programming language](https://categoricaldata.net/cql/fql_def.pdf)and IDE whose scalability is similar to that of SQL and[chase engines](https://www.cs.ox.ac.uk/boris.motik/pubs/bkmmpst17becnhmarking-chase.pdf).\n\nPowered by\n\n[Kan extensions / Silmarils / applied category theory](https://silmarils.tech). CQL provides a reference implementation of David Spivak's\n\n[ologs (ontology logs)](https://arxiv.org/abs/1102.1889).\n\n[Sigma Delta Pi Schwag Store](https://www.bystadium.com/us/en/stores/cql-merch2-93792/S038133016)", "url": "https://wpnews.pro/news/cql-categorical-databases", "canonical_source": "https://categoricaldata.net/", "published_at": "2026-05-30 11:18:04+00:00", "updated_at": "2026-05-30 11:54:29.561892+00:00", "lang": "en", "topics": ["ai-tools", "ai-research", "ai-products", "ai-startups", "ai-infrastructure"], "entities": ["CQL", "Conexus AI", "Ryan Wisnesky", "CategoricalData", "Google Group", "GitHub", "Categorical Databases", "Applied Category Theory"], "alternates": {"html": "https://wpnews.pro/news/cql-categorical-databases", "markdown": "https://wpnews.pro/news/cql-categorical-databases.md", "text": "https://wpnews.pro/news/cql-categorical-databases.txt", "jsonld": "https://wpnews.pro/news/cql-categorical-databases.jsonld"}}