linear-smc: Build SMC morphisms using linear types

[ lgpl, library, math ] [ Propose Tags ]

A number of domain specific languages, such as circuits or data-science workflows, are best expressed as diagrams of boxes connected by wires. A faithful abstraction of box-and-wires is Symmetric Monoidal Categories (SMCs) This library allows one to program SMCs with linear functions instead of SMC combinators. This is done without resorting to template haskell or compiler plugins. The rationale and design of this library is provided by the paper "Evaluating Linear Functions to Symmetric Monoidal Categories", by Jean-Philippe Bernardy and Arnaud Spiwack, appearing at Haskell Symposium 2021. This implementation provides additionally: a much improved implementation as well as an interface specifically tailored towards tensor calculus and compact-closed categories in general.

Modules

[Last Documentation]

  • Control
    • Category
      • Control.Category.Constrained
      • Control.Category.Linear
      • Control.Category.Tensors

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 1.0.0, 1.0.1, 1.1.1, 2.0.1, 2.0.2, 2.2.2, 2.2.3
Dependencies array (>=0.5 && <666), base (>=4.16.4.0 && <666), constraints (>=0.13.4 && <666) [details]
License LGPL-3.0-or-later
Author Jean-Philippe Bernardy
Maintainer jeanphilippe.bernardy@gmail.com
Category Math
Uploaded by JeanPhilippeBernardy at 2023-06-20T15:53:15Z
Distributions NixOS:2.2.3
Downloads 364 total (8 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2023-06-20 [all 2 reports]