equal
deleted
inserted
replaced
240 |
240 |
241 syntax |
241 syntax |
242 "_Sum_any" :: "pttrn \<Rightarrow> 'a \<Rightarrow> 'a::comm_monoid_add" ("(3SUM _. _)" [0, 10] 10) |
242 "_Sum_any" :: "pttrn \<Rightarrow> 'a \<Rightarrow> 'a::comm_monoid_add" ("(3SUM _. _)" [0, 10] 10) |
243 syntax (xsymbols) |
243 syntax (xsymbols) |
244 "_Sum_any" :: "pttrn \<Rightarrow> 'a \<Rightarrow> 'a::comm_monoid_add" ("(3\<Sum>_. _)" [0, 10] 10) |
244 "_Sum_any" :: "pttrn \<Rightarrow> 'a \<Rightarrow> 'a::comm_monoid_add" ("(3\<Sum>_. _)" [0, 10] 10) |
245 syntax (HTML output) |
|
246 "_Sum_any" :: "pttrn \<Rightarrow> 'a \<Rightarrow> 'a::comm_monoid_add" ("(3\<Sum>_. _)" [0, 10] 10) |
|
247 |
|
248 translations |
245 translations |
249 "\<Sum>a. b" == "CONST Sum_any (\<lambda>a. b)" |
246 "\<Sum>a. b" == "CONST Sum_any (\<lambda>a. b)" |
250 |
247 |
251 lemma Sum_any_left_distrib: |
248 lemma Sum_any_left_distrib: |
252 fixes r :: "'a :: semiring_0" |
249 fixes r :: "'a :: semiring_0" |
316 |
313 |
317 syntax |
314 syntax |
318 "_Prod_any" :: "pttrn \<Rightarrow> 'a \<Rightarrow> 'a::comm_monoid_mult" ("(3PROD _. _)" [0, 10] 10) |
315 "_Prod_any" :: "pttrn \<Rightarrow> 'a \<Rightarrow> 'a::comm_monoid_mult" ("(3PROD _. _)" [0, 10] 10) |
319 syntax (xsymbols) |
316 syntax (xsymbols) |
320 "_Prod_any" :: "pttrn \<Rightarrow> 'a \<Rightarrow> 'a::comm_monoid_mult" ("(3\<Prod>_. _)" [0, 10] 10) |
317 "_Prod_any" :: "pttrn \<Rightarrow> 'a \<Rightarrow> 'a::comm_monoid_mult" ("(3\<Prod>_. _)" [0, 10] 10) |
321 syntax (HTML output) |
|
322 "_Prod_any" :: "pttrn \<Rightarrow> 'a \<Rightarrow> 'a::comm_monoid_mult" ("(3\<Prod>_. _)" [0, 10] 10) |
|
323 |
|
324 translations |
318 translations |
325 "\<Prod>a. b" == "CONST Prod_any (\<lambda>a. b)" |
319 "\<Prod>a. b" == "CONST Prod_any (\<lambda>a. b)" |
326 |
320 |
327 lemma Prod_any_zero: |
321 lemma Prod_any_zero: |
328 fixes f :: "'b \<Rightarrow> 'a :: comm_semiring_1" |
322 fixes f :: "'b \<Rightarrow> 'a :: comm_semiring_1" |