# HG changeset patch # User huffman # Date 1277919758 25200 # Node ID dbdbebec57dfcda66ae91524a9632dc11f415009 # Parent 5cbd5d5959f27fe401d2a08bce1a3e8a1414344a change type of 'dimension' to 'a itself => nat diff -r 5cbd5d5959f2 -r dbdbebec57df src/HOL/Multivariate_Analysis/Euclidean_Space.thy --- a/src/HOL/Multivariate_Analysis/Euclidean_Space.thy Wed Jun 30 10:26:02 2010 -0700 +++ b/src/HOL/Multivariate_Analysis/Euclidean_Space.thy Wed Jun 30 10:42:38 2010 -0700 @@ -1582,21 +1582,13 @@ independent (basis ` {.. inj_on basis {.. nat" where +definition (in real_basis) dimension :: "'a itself \ nat" where "dimension x = (THE d. basis ` {d..} = {0} \ independent (basis ` {.. inj_on basis {.. nat" ("(1DIM/(1'(_')))") -translations "DIM('t)" => "CONST dimension (CONST UNIV \ 't set)" - -typed_print_translation {* -let - fun card_univ_tr' show_sorts _ [Const (@{const_syntax UNIV}, Type(_, [T, _]))] = - Syntax.const @{syntax_const "_type_dimension"} $ Syntax.term_of_typ show_sorts T; -in [(@{const_syntax dimension}, card_univ_tr')] -end -*} +translations "DIM('t)" == "CONST dimension (TYPE('t))" lemma (in real_basis) dimensionI: assumes "\d. \ 0 < d; basis ` {d..} = {0}; independent (basis ` {..'a) ` {..'a) ` {..