(2020-08-22 02:22:20 UTC)
# Packages matching: installed
# Name # Installed # Synopsis
base-bigarray base
base-num base Num library distributed with the OCaml compiler
base-threads base
base-unix base
conf-findutils 1 Virtual package relying on findutils
conf-m4 1 Virtual package relying on m4
coq 8.10.dev Formal proof management system
num 0 The Num library for arbitrary-precision integer and rational arithmetic
ocaml 4.05.0 The OCaml compiler (virtual package)
ocaml-base-compiler 4.05.0 Official 4.05.0 release
ocaml-config 1 OCaml Switch Configuration
ocamlfind 1.8.1 A library manager for OCaml
# opam file:
opam-version: "2.0"
maintainer: "llee454@gmail.com"
homepage: "https://github.com/llee454/functional-algebra"
dev-repo: "git+https://github.com/llee454/functional-algebra.git"
bug-reports: "https://github.com/llee454/functional-algebra/issues"
authors: ["Larry D. Lee Jr."]
license: "LGPLv3"
build: [
[make "-j%{jobs}%"]
]
install: [
[make "install"]
]
remove: ["rm" "-R" "%{lib}%/coq/user-contrib/functional_algebra"]
depends: [
"ocaml"
"coq" {>= "8.4"}
]
tags: [
"keyword:algebra"
"keyword:abstract algebra"
"category:Miscellaneous/Coq Extensions"
"date:2018-08-11"
"logpath:functional-algebra"
]
synopsis:
"This package provides a Coq formalization of abstract algebra using"
description: """
a functional programming style. The modules contained within the
package span monoids, groups, rings, and fields and provides both
axiom definitions for these structures and proofs of foundational
results. The current package contains over 800 definitions and
proofs.
This module is unique in that it eschews the tactic-oriented
style of traditional Coq developments. As pointed out by others,
programs written in that style are brittle, hard to read, and
generally inefficient.
While tactic driven development is useful for sketching out proofs,
these disadvantages should dissuade us from publising proofs in
this form.
In this library, I provide a worked example of using Gallina
directly and demonstrate both the feasibility of this approach
and its advantages in terms of clarity, maintainability, and
compile-time efficiency.
In addition, this module includes two expression simplifiers. The
first, defined in monoid_expr.v simplifies monoid expressions. The
second, defined in group_expr.v simplifies group expressions.
These functions allow us to automate many of the steps involved in
proving algebraic theorems directly in Gallina, and represent an
alternative to relying on tactics such as auto, omega, etc.
For more information about this package, please read its Readme
file, which can be found here:
https://github.com/llee454/functional-algebra."""
flags: light-uninstall
url {
src: "https://github.com/llee454/functional-algebra/archive/1.0.2.tar.gz"
checksum: "md5=669f85d5dd1aa2fa235e5518432896a1"
}
trueDry install with the current Coq version:
opam install -y --show-action coq-functional-algebra.1.0.2 coq.8.10.devDry install without Coq/switch base, to test if the problem was incompatibility with the current Coq/OCaml version:
trueopam list; echo; ulimit -Sv 4000000; timeout 2h opam install -y --deps-only coq-functional-algebra.1.0.2 coq.8.10.devopam list; echo; ulimit -Sv 16000000; timeout 2h opam install -y -v coq-functional-algebra.1.0.2 coq.8.10.devTotal: 1 M
../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/field.glob../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/field.vo../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/monoid_expr.glob../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/ring.vo../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/monoid_group.vo../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/commutative_ring.vo../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/monoid.glob../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/ring.glob../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/monoid.vo../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/commutative_ring.glob../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/monoid_expr.vo../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/group.vo../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/abelian_group.vo../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/field.v../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/monoid_group.glob../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/abelian_group.glob../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/group_expr.vo../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/group.glob../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/ring.v../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/commutative_ring.v../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/monoid_expr.v../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/monoid.v../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/monoid_group.v../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/group_expr.glob../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/abelian_group.v../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/group.v../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/function.vo../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/base.vo../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/group_expr.v../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/function.glob../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/base.v../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/function.v../ocaml-base-compiler.4.05.0/lib/coq/user-contrib/functional_algebra/base.globopam remove -y coq-functional-algebra.1.0.2