# _MersennePrimeTest\[A: ([UnsignedInteger](builtin-UnsignedInteger.md)\[A\] val & ([U8](builtin-U8.md) val | [U16](builtin-U16.md) val | [U32](builtin-U32.md) val | [U64](builtin-U64.md) val | [U128](builtin-U128.md) val | [ULong](builtin-ULong.md) val | [USize](builtin-USize.md) val))\]
<span class="source-link">[[Source]](src/math/_test.md#L63)</span>

A Mersenne prime is a prime of the form (2 ^ p) - 1 where p is itself prime


```pony
primitive val _MersennePrimeTest[A: (UnsignedInteger[A] val & (U8 val | U16 val | U32 val | 
    U64 val | U128 val | ULong val | 
    USize val))]
```

## Constructors

### create
<span class="source-link">[[Source]](src/math/_test.md#L63)</span>


```pony
new val create()
: _MersennePrimeTest[A] val^
```

#### Returns

* [_MersennePrimeTest](math-_MersennePrimeTest.md)\[A\] val^

---

## Public Functions

### eq
<span class="source-link">[[Source]](src/math/_test.md#L67)</span>


```pony
fun box eq(
  that: _MersennePrimeTest[A] val)
: Bool val
```
#### Parameters

*   that: [_MersennePrimeTest](math-_MersennePrimeTest.md)\[A\] val

#### Returns

* [Bool](builtin-Bool.md) val

---

### ne
<span class="source-link">[[Source]](src/math/_test.md#L67)</span>


```pony
fun box ne(
  that: _MersennePrimeTest[A] val)
: Bool val
```
#### Parameters

*   that: [_MersennePrimeTest](math-_MersennePrimeTest.md)\[A\] val

#### Returns

* [Bool](builtin-Bool.md) val

---

