{"id":21193196,"url":"https://github.com/math-comp/abel","last_synced_at":"2025-07-01T23:06:40.643Z","repository":{"id":39994905,"uuid":"166809922","full_name":"math-comp/Abel","owner":"math-comp","description":"A proof of Abel-Ruffini theorem.","archived":false,"fork":false,"pushed_at":"2025-06-23T10:52:38.000Z","size":362,"stargazers_count":29,"open_issues_count":10,"forks_count":8,"subscribers_count":16,"default_branch":"master","last_synced_at":"2025-06-23T11:47:46.981Z","etag":null,"topics":["abel-ruffini","coq","galois-theory","mathcomp","ssreflect"],"latest_commit_sha":null,"homepage":"","language":"Rocq Prover","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/math-comp.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-01-21T12:23:48.000Z","updated_at":"2025-06-23T10:52:43.000Z","dependencies_parsed_at":"2024-11-15T19:29:04.970Z","dependency_job_id":"81d30f10-df2b-4312-88ad-9a0b7c3424a6","html_url":"https://github.com/math-comp/Abel","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/math-comp/Abel","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/math-comp%2FAbel","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/math-comp%2FAbel/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/math-comp%2FAbel/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/math-comp%2FAbel/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/math-comp","download_url":"https://codeload.github.com/math-comp/Abel/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/math-comp%2FAbel/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263047677,"owners_count":23405280,"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":["abel-ruffini","coq","galois-theory","mathcomp","ssreflect"],"created_at":"2024-11-20T19:13:27.308Z","updated_at":"2025-07-01T23:06:40.609Z","avatar_url":"https://github.com/math-comp.png","language":"Rocq Prover","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!---\nThis file was generated from `meta.yml`, please do not edit manually.\nFollow the instructions on https://github.com/coq-community/templates to regenerate.\n---\u003e\n# Abel - Ruffini Theorem as a Mathematical Component\n\n[![Docker CI][docker-action-shield]][docker-action-link]\n\n[docker-action-shield]: https://github.com/math-comp/abel/actions/workflows/docker-action.yml/badge.svg?branch=master\n[docker-action-link]: https://github.com/math-comp/abel/actions/workflows/docker-action.yml\n\n\n\n\nThis repository contains a proof of Abel - Galois Theorem\n(equivalence between being solvable by radicals and having a\nsolvable Galois group) and Abel - Ruffini Theorem (unsolvability of\nquintic equations) in the Coq proof-assistant and using the\nMathematical Components library.\n\n## Meta\n\n- Author(s):\n  - Sophie Bernard (initial)\n  - Cyril Cohen (initial)\n  - Assia Mahboubi (initial)\n  - Pierre-Yves Strub (initial)\n- License: [CeCILL-B](CeCILL-B)\n- Compatible Coq versions: Coq 8.10 to 8.16\n- Additional dependencies:\n  - [MathComp ssreflect 2.0 and later](https://math-comp.github.io)\n  - [MathComp fingroup](https://math-comp.github.io)\n  - [MathComp algebra](https://math-comp.github.io)\n  - [MathComp solvable](https://math-comp.github.io)\n  - [MathComp field](https://math-comp.github.io)\n  - [MathComp real closed \u003e= 2.0.0](https://github.com/math-comp/real-closed)\n- Coq namespace: `Abel`\n- Related publication(s):\n  - [Unsolvability of the Quintic Formalized in Dependent Type Theory\n](https://hal.inria.fr/hal-03136002) \n\n## Building and installation instructions\n\nThe easiest way to install the latest released version of Abel - Ruffini Theorem as a Mathematical Component\nis via [OPAM](https://opam.ocaml.org/doc/Install.html):\n\n```shell\nopam repo add coq-released https://coq.inria.fr/opam/released\nopam install coq-mathcomp-abel\n```\n\nTo instead build and install manually, do:\n\n``` shell\ngit clone https://github.com/math-comp/abel.git\ncd abel\nmake   # or make -j \u003cnumber-of-cores-on-your-machine\u003e \nmake install\n```\n\n\n## Organization of the code\n\n- `abel.v` itself contains the main theorems:\n  + `galois_solvable_by_radical` (requires explicit roots of unity),\n  + `ext_solvable_by_radical` (equivalent, and still requires roots of unity),\n  + `radical_solvable_ext` (no mention of roots of unity),\n  + `AbelGalois`, (equivalence obtained from the above two, requires\n  roots of unity), and consequences on solvability of polynomial\n  + and their consequence on the example polynomial X⁵ -4X + 2:\n  `example_not_solvable_by_radicals`,\n\n- `xmathcomp/various.v` contains various (rather straightforward)\n  extensions that should be added to various mathcomp packages asap\n  with potential minor modifications,\n\n- `xmathcomp/char0.v` contains 0 characteristic specific results,\n  that could use a refactoring for a smoother integration with\n  mathcomp. e.g. ratr could get a canonical structure or rmorphism\n  when the target field is a `lmodType ratr`, and we could provide a\n  wrapper`NullCharType` akin to `PrimeCharType` (from `finfield.v`),\n\n- `xmathcomp/cyclotomic.v` contains complementary results about\n  cyclotomic polynomials,\n\n- `xmathcomp/map_gal.v` contains complementary results about galois\n  groups and galois extensions, including various isomorphisms,\n  minimal galois extensions, solvable extensions, and mapping galois\n  groups and galois extensions from a splitting field to\n  another. This last construction is essential in switching to\n  fields with roots of unity when we do not have them yet,\n\n- `xmathcomp/classic_ext.v` contains the theory of classic\n  extensions by arbitrary polynomials, most of the results there are\n  in the classically monad, making the results available either for\n  a boolean goal or a classical goal. This was instrumental in\n  eliminating references to some embarrassing roots of the unity.\n\n- `xmathcomp/algR.v` contains a proof that the real subset of `algC`\n  (isomorphic to `{x : algC | x \\is Num.real}`) is a real closed field\n  (and archimedean), and endows this type `algR` with appropriate\n  canonical instances.\n\n- `xmathcomp/real_closed_ext.v` contains some missing lemmas from\n  the library `math-comp/real_closed`, in particular bounding the\n  number of real roots of a polynomial by one plus the number of\n  real roots of its derivative,\n\n## Development information\n\n[Developping with nix](NIX.md)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmath-comp%2Fabel","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmath-comp%2Fabel","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmath-comp%2Fabel/lists"}