Simplify the FractionalPart of an expression including variables

See my following testing:

In[199]:= Assuming[{n1,n2,n3}\[Epsilon] Integers, FractionalPart[n1 + 2 n2 - 3 n3 ]]
FullSimplify[FractionalPart[n1 + 2 n2 - 3 n3], {n1,n2,n3}\[Epsilon] Integers ]

Out[199]= FractionalPart[n1 + 2 n2 - 3 n3]

Out[200]= FractionalPart[n1 + 2 n2 - 3 n3]

Why can’t I simplify the results, that is, return the correct results 0?

Regards,
Zhao

In[13]:= Simplify[FractionalPart[n1 + 2 n2 - 3 n3], Element[{n1, n2, n3}, Integers]]

Out[13]= 0

You have used the infix form \[Epsilon], it should be \[Element].

In[5]:= Assuming[Element[{n1, n2, n3}, Integers], FractionalPart[n1 + 2 n2 - 3 n3 ]]
Simplify[FractionalPart[n1 + 2 n2 - 3 n3], Element[{n1, n2, n3}, Integers]]

Out[5]= FractionalPart[n1 + 2 n2 - 3 n3]

Out[6]= 0

Why does the “Assuming” approach not work?

You have used the infix form [Epsilon], it should be [Element].

Thank you for pointing out my misuse of mathematical symbols. The shapes of these two symbols are so similar that I really didn’t notice their differences.

Assuming does not affect evaluation of every type of its second argument. Its scope is limited. From documentation:

Assuming.png

In[23]:= Assuming[Element[{n1, n2, n3}, Integers], FractionalPart[n1 + 2 n2 - 3 n3] // Simplify]

Out[23]= 0

Or:

In[25]:= Assuming[Element[_Symbol, Integers], FractionalPart[n1 + 2 n2 - 3 n3] // Simplify]

Out[25]= 0