{"id":13837474,"url":"https://github.com/konn/computational-algebra","last_synced_at":"2025-04-07T08:27:18.964Z","repository":{"id":6353028,"uuid":"7589820","full_name":"konn/computational-algebra","owner":"konn","description":"General-Purpose Computer Algebra System as an EDSL in Haskell","archived":false,"fork":false,"pushed_at":"2024-05-13T19:30:45.000Z","size":122361,"stargazers_count":92,"open_issues_count":6,"forks_count":9,"subscribers_count":13,"default_branch":"master","last_synced_at":"2024-05-13T20:44:59.092Z","etag":null,"topics":["algorithm","computational-algebra","groebner-basis","haskell","ideal","math","mathematics","polynomial"],"latest_commit_sha":null,"homepage":"http://konn.github.io/computational-algebra/","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/konn.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["konn"],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2013-01-13T15:48:48.000Z","updated_at":"2024-05-30T04:34:13.046Z","dependencies_parsed_at":"2023-02-14T00:46:11.596Z","dependency_job_id":"ac0e360d-aa4a-43ff-bffc-dbccfb098b25","html_url":"https://github.com/konn/computational-algebra","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/konn%2Fcomputational-algebra","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/konn%2Fcomputational-algebra/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/konn%2Fcomputational-algebra/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/konn%2Fcomputational-algebra/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/konn","download_url":"https://codeload.github.com/konn/computational-algebra/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247617802,"owners_count":20967673,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["algorithm","computational-algebra","groebner-basis","haskell","ideal","math","mathematics","polynomial"],"created_at":"2024-08-04T15:01:10.910Z","updated_at":"2025-04-07T08:27:18.938Z","avatar_url":"https://github.com/konn.png","language":"HTML","readme":"Computational Algebra Library\n==============================\n[![pipeline status](https://gitlab.com/konn/computational-algebra/badges/master/pipeline.svg)](https://gitlab.com/konn/computational-algebra/commits/master) \n[![coverage report](https://gitlab.com/konn/computational-algebra/badges/master/coverage.svg)](https://gitlab.com/konn/computational-algebra/commits/master)\n\n\n**For more detail, please read [Official Project Site](http://konn.github.io/computational-algebra/)**.\n\nOverview\n--------\nThe `computational-algebra` is the computational algebra system, implemented as a Embedded Domain Specific Language (*EDSL*) in [Haskell](https://www.haskell.org).\nThis library provides many functionality for computational algebra, especially ideal computation such as Groebner basis calculation.\n\nThanks to Haskell's powerful language features, this library achieves the following goals:\n\nType-Safety\n:   Haskell's static type system enforces **static correctness** and prevents you from violating invariants. \n\nFlexibility\n:   With the powerful type-system of Haskell,\n    we can write **highly abstract program** resulted in **easy-to-extend** system.\n\nEfficiency\n:   Haskell comes with many **aggressive optimization mechanism** and **parallel computation features**,\n    which enables us to write efficient program.\n\nThis package currently provides the following functionalities:\n\n* Groebner basis calculation w.r.t. arbitrary monomial ordering\n    * Currently using Buchberger's algorithm with some optimization\n    * Faugere's F_4 algorithms is experimentally implemented,\n\t  but currently not as fast as Buchberger's algorithm \n* Computation in the (multivariate) polynomial ring over arbitarary field and its quotient ring\n    * Ideal membership problem\n    * Ideal operations such as intersection, saturation and so on.\n    * Zero-dimensional ideal operation and conversion via FGLM algorithm\n    * Variable elimination\n* Find numeric solutions for polynomial system with real coefficient\n\nRequirements and Installation\n------------------------------\nOld version of this package is uploaded on [Hackage](http://hackage.haskell.org/package/computational-algebra), but it's rather outdated.\nMost recent version of `computational-algebra` is developed on GitHub.\n\nIt uses the most agressive language features recently implemented in [Glasgow Haskell Compiler](https://www.haskell.org/ghc/), so it requires at least GHC 8.0.1 and\nalso it depends on many packages currently not available on Hackage, but you can install it fairly easily with help of [The Haskell Tool Stack](https://docs.haskellstack.org/en/stable/README/).\n\n```zsh\n$ curl -sSL https://get.haskellstack.org/ | sh\n  # if you haven't install Stack yet\n$ git clone https://github.com/konn/computational-algebra\n$ cd computational-algebra\n$ stack build\n```\n\nIn addition, you may need to install GSL and LAPACK (for matrix computation) beforehand.\nYou can install them via Homebrew (OS X), `apt-get`, or other major package management systems.\n\nPaper\n-----\n* Hiromi Ishii, _A Purely Functional Computer Algebra System Embedded in Haskell_.\n  Computer Algebra in Scientific Computing, pp. 288-303. 20th International Workshop, CASC 2018, Lille, France, September 17-21, 2018, Proceedings ([arXiv][arXiv]).\n\n### [Read More in Official Project Site](http://konn.github.io/computational-algebra/)\n\n[arXiv]: https://arxiv.org/abs/1807.01456","funding_links":["https://github.com/sponsors/konn"],"categories":["HTML"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkonn%2Fcomputational-algebra","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkonn%2Fcomputational-algebra","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkonn%2Fcomputational-algebra/lists"}