An ACL2 formalization of Algebraic structures * J. Heras 1 , F.J. Mart´ ın-Mateos 2 and V. Pascual 1 1 Departmento de Matem´ aticas y Computaci´on, Universidad de La Rioja 2 Grupo de L´ogica Computacional, Departamento de Ciencias de la Computaci´on e Inteligencia Artificial, Universidad de Sevilla XIII Encuentro de ´ Algebra Computacional y Aplicaciones (EACA 2012) * Partially supported by Ministerio de Educaci´on y Ciencia, project MTM2009-13842-C02-01, and by European Commission FP7, STREP project ForMath, n. 243847 J. Heras et al. An ACL2 formalization of Algebraic structures 1/20
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
An ACL2 formalization of Algebraic structures∗
J. Heras1, F.J. Martın-Mateos2 and V. Pascual1
1Departmento de Matematicas y Computacion, Universidad de La Rioja2Grupo de Logica Computacional, Departamento de Ciencias de la Computacion e
Inteligencia Artificial, Universidad de Sevilla
XIII Encuentro de Algebra Computacional y Aplicaciones
(EACA 2012)
∗Partially supported by Ministerio de Educacion y Ciencia, project MTM2009-13842-C02-01, and by European
Commission FP7, STREP project ForMath, n. 243847
J. Heras et al. An ACL2 formalization of Algebraic structures 1/20
Motivation
Table of Contents
1 Motivation
2 A methodology to deal with algebraic structures in ACL2
3 Application: Homological Algebra
4 Benefits of our methodology
5 Conclusions and Further work
J. Heras et al. An ACL2 formalization of Algebraic structures 2/20
Motivation
Table of Contents
1 Motivation
2 A methodology to deal with algebraic structures in ACL2
3 Application: Homological Algebra
4 Benefits of our methodology
5 Conclusions and Further work
J. Heras et al. An ACL2 formalization of Algebraic structures 3/20
Motivation Interactive Proof Assistants
Interactive Proof Assistants
What is an Interactive Proof Assistant?
Software tool for the development of formal proofsMan-Machine collaboration:
Human: design the proofsMachine: fill the gaps
Examples: Isabelle, Hol, ACL2, Coq, . . .
Applications:Mathematical proofs:
Four Color TheoremFundamental Theorem of AlgebraKepler conjecture
Software and Hardware verification:
C compilerAMD5K86 microprocessor. . .
J. Heras et al. An ACL2 formalization of Algebraic structures 4/20
Motivation Interactive Proof Assistants
Interactive Proof Assistants
What is an Interactive Proof Assistant?
Software tool for the development of formal proofsMan-Machine collaboration:
Human: design the proofsMachine: fill the gaps
Examples: Isabelle, Hol, ACL2, Coq, . . .
Applications:Mathematical proofs:
Four Color TheoremFundamental Theorem of AlgebraKepler conjecture
Software and Hardware verification:
C compilerAMD5K86 microprocessor. . .
J. Heras et al. An ACL2 formalization of Algebraic structures 4/20
Motivation Algebraic structures in theorem provers
Algebraic structures in theorem provers
Foundation for large proof developments
Coq:
CCorn hierarchySSReflect hierarchy. . .
Isabelle
Nuprl
Lego
J. Heras et al. An ACL2 formalization of Algebraic structures 5/20
Motivation Algebraic structures in theorem provers
Algebraic structures in theorem provers
Foundation for large proof developments
Coq:
CCorn hierarchySSReflect hierarchy. . .
Isabelle
Nuprl
Lego
J. Heras et al. An ACL2 formalization of Algebraic structures 5/20
Motivation Algebraic structures in theorem provers
ACL2
ACL2 (A Computational Logic for an Applicative CommonLisp)
J. Heras et al. An ACL2 formalization of Algebraic structures 14/20
Application: Homological Algebra Homology groups
Homology groups
ker(g) = {x ∈ G2 : g(x) ∼G30G3}
(defun ker-g-inv (x)
(and (G2-inv x)
(G3-eq (g x) (G3-id-elem))))
(defconst *ker-g*
(make-abelian-group :group
(make-group :monoid
(make-monoid :semigroup
(make-semigroup :magma
(make-magma :setoid
(make-setoid :inv ’ker-g-inv :eq ’G2-eq)
:binary-op ’G2-binary-op))
:id-elem ’G2-id-elem)
:inverse ’G2-inverse))
J. Heras et al. An ACL2 formalization of Algebraic structures 14/20
Application: Homological Algebra Homology groups
Homology groups
im(f ) = {x ∈ G2 : ∃y ∈ G1, f (y) ∼G2x}
(defun-sk im-f-inv (x)
(exists (y)
(and (G2-inv x) (G1-inv y) (G2-eq (f y) x))))
(defconst *im-f*
(make-abelian-group :group
(make-group :monoid
(make-monoid :semigroup
(make-semigroup :magma
(make-magma :setoid
(make-setoid :inv ’im-f-inv :eq ’G2-eq)
:binary-op ’G2-binary-op))
:id-elem ’G2-id-elem)
:inverse ’G2-inverse))
J. Heras et al. An ACL2 formalization of Algebraic structures 14/20
Application: Homological Algebra Homology groups
Homology groups
H(f ,g) = ker(g)/im(f )
Equivalence Relation: ∀x , y ∈ ker(g), x ∼im(f ) y ⇔ xy−1 ∈ im(f )(defun im-f-eq (x y)
(im-f-inv (G2-binary-op x (G2-inverse y))))
(defconst *homology-fg*
(make-abelian-group :group
(make-group :monoid
(make-monoid :semigroup
(make-semigroup :magma
(make-magma :setoid
(make-setoid :inv ’ker-g-inv :eq ’im-f-eq)
:binary-op ’G2-binary-op))
:id-elem ’G2-id-elem)
:inverse ’G2-inverse))
(check-abelian-group-p *homology-fg*)
J. Heras et al. An ACL2 formalization of Algebraic structures 14/20
Benefits of our methodology
Table of Contents
1 Motivation
2 A methodology to deal with algebraic structures in ACL2
3 Application: Homological Algebra
4 Benefits of our methodology
5 Conclusions and Further work
J. Heras et al. An ACL2 formalization of Algebraic structures 15/20
Benefits of our methodology
Benefits of our methodology
Application to Algebraic Topology
Definition
A chain complex is a pair (Cn, dn)n∈Z where (Cn)n∈Z is a graded R-module indexed onthe integers and (dn)n∈Z (the differential map) is a graded R-module endomorphismof degree −1 (dn : Cn → Cn−1) such that dn−1dn = 0 (this property is known asnilpotency condition).
Let (Cn, dn)n∈Z and (Dn, dn)n∈Z be two chain complexes, a chain complex morphism
between them is a family of R-module morphism (fn)n∈Z such that dnfn = fn−1dn foreach n ∈ Z.
Definition
Let C∗ = (Cn, dCn)n∈Z and D∗ = (Dn, dDn)n∈Z be two chain complexes andφ : D∗ → C∗ be a chain complex morphism. Then the cone of φ, denoted byCone(φ) = (An, dAn)n∈Z, is defined as: An := Cn+1 ⊕ Dn; and
dAn :=
[dCn+1 φ
0 −dDn
]
J. Heras et al. An ACL2 formalization of Algebraic structures 16/20
Benefits of our methodology
Benefits of our methodology
Application to Algebraic Topology
Definition
A chain complex is a pair (Cn, dn)n∈Z where (Cn)n∈Z is a graded R-module indexed onthe integers and (dn)n∈Z (the differential map) is a graded R-module endomorphismof degree −1 (dn : Cn → Cn−1) such that dn−1dn = 0 (this property is known asnilpotency condition).
Let (Cn, dn)n∈Z and (Dn, dn)n∈Z be two chain complexes, a chain complex morphism
between them is a family of R-module morphism (fn)n∈Z such that dnfn = fn−1dn foreach n ∈ Z.
Definition
Let C∗ = (Cn, dCn)n∈Z and D∗ = (Dn, dDn)n∈Z be two chain complexes andφ : D∗ → C∗ be a chain complex morphism. Then the cone of φ, denoted byCone(φ) = (An, dAn)n∈Z, is defined as: An := Cn+1 ⊕ Dn; and
dAn :=
[dCn+1 φ
0 −dDn
]
J. Heras et al. An ACL2 formalization of Algebraic structures 16/20
Benefits of our methodology
Benefits of our methodology
Application to Algebraic Topology
Definition
A chain complex is a pair (Cn, dn)n∈Z where (Cn)n∈Z is a graded R-module indexed onthe integers and (dn)n∈Z (the differential map) is a graded R-module endomorphismof degree −1 (dn : Cn → Cn−1) such that dn−1dn = 0 (this property is known asnilpotency condition).
Let (Cn, dn)n∈Z and (Dn, dn)n∈Z be two chain complexes, a chain complex morphism
between them is a family of R-module morphism (fn)n∈Z such that dnfn = fn−1dn foreach n ∈ Z.
Definition
Let C∗ = (Cn, dCn)n∈Z and D∗ = (Dn, dDn)n∈Z be two chain complexes andφ : D∗ → C∗ be a chain complex morphism. Then the cone of φ, denoted byCone(φ) = (An, dAn)n∈Z, is defined as: An := Cn+1 ⊕ Dn; and
dAn :=
[dCn+1 φ
0 −dDn
]
J. Heras et al. An ACL2 formalization of Algebraic structures 16/20
Benefits of our methodology
Benefits of our methodology
Definition of generic Definition of Proof of the correctnesschain complex morphism cone construction of the construction
from scratch 19 function symbols 9 definitions 49 theorems19 witnesses 34 auxiliary lemmas