Skip to content

IsEven ​

Whether n is an even integer.

✓ checked against that system · ! checked, with disagreements (hover a chip)Fungrim entry1c376628b4c364f0a5c0e088✓fd732d✓Wolfram LanguageEvenQ!
IsEven(n)TrueTrue if nn is an even integer, else FalseFalse.
Juliais_even(ZZ(n))Rustis_even(n)
Typed signatures
TypePackageApplies
(number) -> booleancompute-enginealways

Domain: Arithmetic

Examples

Basic #
live ↗
InIsEven(4)\mathrm{IsEven}(4)OutTrue\mathrm{True}
live ↗
InIsEven(3)\mathrm{IsEven}(3)OutFalse\mathrm{False}

Zero is even

live ↗
InIsEven(0)\mathrm{IsEven}(0)OutTrue\mathrm{True}

Negative integers count too

live ↗
InIsEven(−4)\mathrm{IsEven}(-4)OutTrue\mathrm{True}

An even integer gives True

live ↗
InIsEven(8)\mathrm{IsEven}(8)OutTrue\mathrm{True}
Scope #

A non-integer is not even

live ↗
InIsEven(2.5)\mathrm{IsEven}(2.5)OutFalse\mathrm{False}

Big integers

live ↗
InIsEven(2100)\mathrm{IsEven}(2^{100})OutTrue\mathrm{True}
live ↗
InIsEven(10!)\mathrm{IsEven}(10!)OutTrue\mathrm{True}

Threads element-wise over a list

live ↗
InIsEven([1,2,3])\mathrm{IsEven}(\bigl\lbrack1, 2, 3\bigr\rbrack)Out[False,True,False]\bigl\lbrack\mathrm{False}, \mathrm{True}, \mathrm{False}\bigr\rbrack
Applications #

Select the even numbers up to 10

live ↗
InFilter(1..10,IsEven)\mathrm{Filter}(1..10, \mathrm{IsEven})Out[2,4,6,8,10]\bigl\lbrack2, 4, 6, 8, 10\bigr\rbrack
Properties #

Every integer is exactly one of odd and even. See IsOdd

live ↗
InIsOdd(12)⊻IsEven(12)\mathrm{IsOdd}(12)\veebar\mathrm{IsEven}(12)OutTrue\mathrm{True}

Divisible by 2, so even

live ↗
InIsEven(12)\mathrm{IsEven}(12)OutTrue\mathrm{True}
Possible issues #

A symbol stays undecided rather than False

live ↗
InIsEven(x)\mathrm{IsEven}(x)OutIsEven(x)\mathrm{IsEven}(x)
About
Examples13
Checked againstWolfram Language 12 agree1 differSymPy 10 agree1 differJulia 9 agree1 errorRust 8 agree2 error
CrosswalkFungrim entry ×5Wolfram LanguageJuliaRust

Implementation

mappedsympypackages/oracle/src/mappings.ts

Wolfram's EvenQ is False unless the operand is an even integer, so SymPy's undecided is_even (None), as for a symbol or 4.0, reads as False.

mappedjuliapackages/oracle/src/mappings.ts
mappedrustpackages/oracle/src/mappings.ts

See also: IsOdd