section \ Physical Constants \ theory SI_Constants imports SI_Proof begin abbreviation "hertz \ second\<^sup>-\<^sup>\" abbreviation "radian \ meter \<^bold>\ meter\<^sup>-\<^sup>\" abbreviation "steradian \ meter\<^sup>\ \<^bold>\ meter\<^sup>-\<^sup>\" abbreviation "joule \ kilogram \<^bold>\ meter\<^sup>\ \<^bold>\ second\<^sup>-\<^sup>\" abbreviation "watt \ kilogram \<^bold>\ meter\<^sup>\ \<^bold>\ second\<^sup>-\<^sup>\" abbreviation "coulomb \ ampere \<^bold>\ second" abbreviation "lumen \ candela \<^bold>\ steradian" text \ The most general types we support must form a field into which the natural numbers can be injected. \ default_sort field_char_0 abbreviation (input) caesium_frequency:: "'a[T\<^sup>-\<^sup>1]" ("\v\<^sub>C\<^sub>s") where "caesium_frequency \ 9192631770\hertz" abbreviation speed_of_light :: "'a[L \ T\<^sup>-\<^sup>1]" where "speed_of_light \ 299792458\(meter\<^bold>\second\<^sup>-\<^sup>\)" abbreviation Planck :: "'a[M \ L\<^sup>2 \ T\<^sup>-\<^sup>2 \ T]" where "Planck \ (6.62607015 \ 1/(10^34))\(joule\<^bold>\second)" abbreviation elementary_charge :: "'a[I \ T]" where "elementary_charge \ (1.602176634 \ 1/(10^19))\coulomb" abbreviation Boltzmann :: "'a[M \ L\<^sup>2 \ T\<^sup>-\<^sup>2 \ \\<^sup>-\<^sup>1]" where "Boltzmann \ (1.380649\1/(10^23))\(joule \<^bold>/ kelvin)" abbreviation Avogadro :: "'a[N\<^sup>-\<^sup>1]" where "Avogadro \ 6.02214076\(10^23)\(mole\<^sup>-\<^sup>\)" abbreviation max_luminous_frequency :: "'a[T\<^sup>-\<^sup>1]" where "max_luminous_frequency \ (540\10^12)\hertz" abbreviation luminous_efficacy :: "'a[J \ (L\<^sup>2 \ L\<^sup>-\<^sup>2) \ (M \ L\<^sup>2 \ T\<^sup>-\<^sup>3)\<^sup>-\<^sup>1]" where "luminous_efficacy \ 683\(lumen\<^bold>/watt)" abbreviation gravitational_constant :: "'a[L\<^sup>3 \ M\<^sup>-\<^sup>1 \ T\<^sup>-\<^sup>2]" where "gravitational_constant \ (6.6743015 \ 1/(10 ^ 11)) \ (meter\<^sup>\\<^bold>\kilogram\<^sup>-\<^sup>\\<^bold>\second\<^sup>-\<^sup>\)" thm si_def theorem Quant_eq_iff_same_dim: "x \\<^sub>Q y \ x = y" by (transfer, simp) theorem hertz_definition: "1\hertz = \v\<^sub>C\<^sub>s / 9192631770" by (simp add: unit_eq_iff_magn_eq si_def) theorem second_definition: "1\second \\<^sub>Q (9192631770::_[\]) \<^bold>/ \v\<^sub>C\<^sub>s" by (simp add: unit_equiv_iff, simp add: Quant_equiv_def unit_eq_iff_magn_eq si_def) default_sort type end