src/HOL/Algebra/README.thy
author paulson <lp15@cam.ac.uk>
Fri, 04 Jul 2025 15:08:09 +0100
changeset 82803 982e7128ce0f
parent 75916 b6589c8ccadd
permissions -rw-r--r--
Two lemmas and a comment
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
75916
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
     1
theory README imports Main
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
     2
begin
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
     3
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
     4
section \<open>Algebra --- Classical Algebra, using Explicit Structures and Locales\<close>
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
     5
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
     6
text \<open>
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
     7
  This directory contains proofs in classical algebra. It is intended as a
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
     8
  base for any algebraic development in Isabelle. Emphasis is on reusability.
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
     9
  This is achieved by modelling algebraic structures as first-class citizens
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    10
  of the logic (not axiomatic type classes, say). The library is expected to
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    11
  grow in future releases of Isabelle. Contributions are welcome.
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    12
\<close>
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    13
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    14
subsection \<open>GroupTheory, including Sylow's Theorem\<close>
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    15
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    16
text \<open>
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    17
  These proofs are mainly by Florian Kammüller. (Later, Larry Paulson
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    18
  simplified some of the proofs.) These theories were indeed the original
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    19
  motivation for locales.
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    20
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    21
  Here is an outline of the directory's contents:
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    22
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    23
  \<^item> Theory \<^file>\<open>Group.thy\<close> defines semigroups, monoids, groups, commutative
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    24
    monoids, commutative groups, homomorphisms and the subgroup relation. It
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    25
    also defines the product of two groups (This theory was reimplemented by
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    26
    Clemens Ballarin).
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    27
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    28
  \<^item> Theory \<^file>\<open>FiniteProduct.thy\<close> extends commutative groups by a product
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    29
    operator for finite sets (provided by Clemens Ballarin).
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    30
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    31
  \<^item> Theory \<^file>\<open>Coset.thy\<close> defines the factorization of a group and shows that
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    32
    the factorization a normal subgroup is a group.
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    33
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    34
  \<^item> Theory \<^file>\<open>Bij.thy\<close> defines bijections over sets and operations on them and
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    35
    shows that they are a group. It shows that automorphisms form a group.
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    36
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    37
  \<^item> Theory \<^file>\<open>Exponent.thy\<close> the combinatorial argument underlying Sylow's
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    38
    first theorem.
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    39
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    40
  \<^item> Theory \<^file>\<open>Sylow.thy\<close> contains a proof of the first Sylow theorem.
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    41
\<close>
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    42
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    43
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    44
subsection \<open>Rings and Polynomials\<close>
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    45
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    46
text \<open>
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    47
  \<^item> Theory \<^file>\<open>Ring.thy\<close> defines Abelian monoids and groups. The difference to
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    48
    commutative structures is merely notational: the binary operation is
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    49
    addition rather than multiplication. Commutative rings are obtained by
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    50
    inheriting properties from Abelian groups and commutative monoids. Further
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    51
    structures in the algebraic hierarchy of rings: integral domain.
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    52
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    53
  \<^item> Theory \<^file>\<open>Module.thy\<close> introduces the notion of a R-left-module over an
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    54
    Abelian group, where R is a ring.
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    55
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    56
  \<^item> Theory \<^file>\<open>UnivPoly.thy\<close> constructs univariate polynomials over rings and
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    57
    integral domains. Degree function. Universal Property.
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    58
\<close>
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    59
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    60
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    61
subsection \<open>Development of Polynomials using Type Classes\<close>
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    62
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    63
text \<open>
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    64
  A development of univariate polynomials for HOL's ring classes is available
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    65
  at \<^file>\<open>~~/src/HOL/Computational_Algebra/Polynomial.thy\<close>.
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    66
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    67
  [Jacobson1985] Nathan Jacobson, Basic Algebra I, Freeman, 1985.
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    68
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    69
  [Ballarin1999] Clemens Ballarin, Computer Algebra and Theorem Proving,
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    70
  Author's PhD thesis, 1999. Also University of Cambridge, Computer Laboratory
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    71
  Technical Report number 473.
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    72
\<close>
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    73
b6589c8ccadd discontinued special support for README.html (which was hardly ever used in the past 2 decades);
wenzelm
parents:
diff changeset
    74
end