CQL: Categorical Databases 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. Categorical Databases Home https://categoricaldata.net | Download download.html | Getting Started examples.html | Manual help/index.html | Wiki https://github.com/CategoricalData/CQL/wiki | Papers papers.html | Screen Shots screens.html | Github https://github.com/categoricalData | Google Group https://groups.google.com/forum/ forum/categoricaldata | Conexus AI https://conexus.com | Contact mailto:info@conexus.com A principled way to transform data Open-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 . | Value Proposition 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. Key Features 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 . Powered by Kan extensions / Silmarils / applied category theory https://silmarils.tech . CQL provides a reference implementation of David Spivak's ologs ontology logs https://arxiv.org/abs/1102.1889 . Sigma Delta Pi Schwag Store https://www.bystadium.com/us/en/stores/cql-merch2-93792/S038133016