Re: Re: Re: "Assuming"

*To*: mathgroup at smc.vnet.net*Subject*: [mg85905] Re: [mg85868] Re: [mg85858] Re: "Assuming"*From*: Daniel Lichtblau <danl at wolfram.com>*Date*: Wed, 27 Feb 2008 04:28:16 -0500 (EST)*References*: <20080221171506.200$2n_-_@newsreader.com> <200802221221.HAA08545@smc.vnet.net> <200802251237.HAA22859@smc.vnet.net> <200802261243.HAA22523@smc.vnet.net> <3185411B-C98F-476F-9C77-FBC32FE719D2@mimuw.edu.pl>

Andrzej Kozlowski wrote: > > On 26 Feb 2008, at 13:43, Daniel Lichtblau wrote: > >> [...] >> >> I've seen cases where the FullSimplify[something] result differs from >> something on a finite set of integers. This motivated me several months >> ago to alter assumptions of integrality, to reality (realness? >> realhood?), in processing of Integrate. >> >> Daniel Lichtblau >> Wolfram Research >> > > Formally speaking, reasonable measures (e.g. Radon measures) are either > diffuse or Dirac measures (or linear combinations of these). However, > for the former, the entire set of integers has measure zero, and for > the latter certain finite sets will have a non-zero measure. So none of > these seems to fit the intended meaning of "measure zero". > > More seriously; I think the intended meaning is that in > Simplify[thing1] -> thing2 thing1 and thing2 should both be functions > of some variable that is defined on an uncountable set, then they may > be are allowed to differ for a finite number of values. But, if the > functions are defined only on countable sets (e.g. the set of all > integers, as is the case with many number theoretic functions) then the > failure of thing2 to be equal to thing1 on a finite set could be very > serious. I think in such situations the "set of measure zero" should > really be the empty set, or perhaps in really exceptional cases a set > that contains no more than a single point. > > Andrzej Kozlowski Here is an example of the behavior in question. I do not pass judgement on whether it should be regarded as a bug or a feature. I simply wanted to give a concrete example where the behavior arises and is difficult to supress. In[2]:= i1 = Integrate[Sin[m*x]*Sin[n*x], {x,0,2*Pi}, Assumptions->Element[{m,n},Reals]]; Check what happens when we assign n->1 and then take limit as m->1. In[3]:= l1 = Limit[i1 /. n->1, m->1] Out[3]= Pi That was fine. Now see what happens if we assign n->1 and simplify under assumption that m is an arbitrary integer. In[4]:= l2 = Simplify[i1 /. n->1, Element[m,Integers]] Out[4]= 0 Daniel Lichtblau Wolfram Research

**References**:**Re: "Assuming"***From:*Andrzej Kozlowski <akoz@mimuw.edu.pl>

**Re: "Assuming"***From:*"Mariano Suárez-Alvarez" <mariano.suarezalvarez@gmail.com>

**Re: Re: "Assuming"***From:*Daniel Lichtblau <danl@wolfram.com>