src/HOL/Algebra/poly/PolyHomo.thy
author nipkow
Mon, 13 May 2002 15:27:28 +0200
changeset 13145 59bc43b51aa2
parent 11779 1aa328cb273a
child 13735 7de9342aca7a
permissions -rw-r--r--
*** empty log message ***
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
7998
3d0c34795831 Algebra and Polynomial theories, by Clemens Ballarin
paulson
parents:
diff changeset
     1
(*
3d0c34795831 Algebra and Polynomial theories, by Clemens Ballarin
paulson
parents:
diff changeset
     2
    Universal property and evaluation homomorphism of univariate polynomials
3d0c34795831 Algebra and Polynomial theories, by Clemens Ballarin
paulson
parents:
diff changeset
     3
    $Id$
3d0c34795831 Algebra and Polynomial theories, by Clemens Ballarin
paulson
parents:
diff changeset
     4
    Author: Clemens Ballarin, started 15 April 1997
3d0c34795831 Algebra and Polynomial theories, by Clemens Ballarin
paulson
parents:
diff changeset
     5
*)
3d0c34795831 Algebra and Polynomial theories, by Clemens Ballarin
paulson
parents:
diff changeset
     6
3d0c34795831 Algebra and Polynomial theories, by Clemens Ballarin
paulson
parents:
diff changeset
     7
PolyHomo = Degree +
3d0c34795831 Algebra and Polynomial theories, by Clemens Ballarin
paulson
parents:
diff changeset
     8
3d0c34795831 Algebra and Polynomial theories, by Clemens Ballarin
paulson
parents:
diff changeset
     9
(* Instantiate result from Degree.ML *)
3d0c34795831 Algebra and Polynomial theories, by Clemens Ballarin
paulson
parents:
diff changeset
    10
3d0c34795831 Algebra and Polynomial theories, by Clemens Ballarin
paulson
parents:
diff changeset
    11
instance
11093
62c2e0af1d30 Changes to HOL/Algebra:
ballarin
parents: 9279
diff changeset
    12
  up :: (domain) domain (up_one_not_zero, up_integral)
7998
3d0c34795831 Algebra and Polynomial theories, by Clemens Ballarin
paulson
parents:
diff changeset
    13
3d0c34795831 Algebra and Polynomial theories, by Clemens Ballarin
paulson
parents:
diff changeset
    14
consts
11779
1aa328cb273a ring instead of ringS;
wenzelm
parents: 11093
diff changeset
    15
  EVAL2	:: "('a::ring => 'b) => 'b => 'a up => 'b::ring"
1aa328cb273a ring instead of ringS;
wenzelm
parents: 11093
diff changeset
    16
  EVAL	:: "'a::ring => 'a up => 'a"
7998
3d0c34795831 Algebra and Polynomial theories, by Clemens Ballarin
paulson
parents:
diff changeset
    17
3d0c34795831 Algebra and Polynomial theories, by Clemens Ballarin
paulson
parents:
diff changeset
    18
defs
11093
62c2e0af1d30 Changes to HOL/Algebra:
ballarin
parents: 9279
diff changeset
    19
  EVAL2_def	"EVAL2 phi a p ==
62c2e0af1d30 Changes to HOL/Algebra:
ballarin
parents: 9279
diff changeset
    20
                 setsum (%i. phi (coeff i p) * a ^ i) {..deg p}"
7998
3d0c34795831 Algebra and Polynomial theories, by Clemens Ballarin
paulson
parents:
diff changeset
    21
  EVAL_def	"EVAL == EVAL2 (%x. x)"
3d0c34795831 Algebra and Polynomial theories, by Clemens Ballarin
paulson
parents:
diff changeset
    22
3d0c34795831 Algebra and Polynomial theories, by Clemens Ballarin
paulson
parents:
diff changeset
    23
end