Fixed-class nilpotency testing problem

Definition
The fixed-class nilpotency testing problem is a general class of problems where:


 * 1) A group is specified using some suitable group description rule (which may be an encoding, multi-encoding, or description using a presentation, among other possibilities).
 * 2) A positive integer $$c$$ is specified.
 * 3) We are asked to output Yes/No based on whether the group is a nilpotent group of nilpotency class at most $$c$$.

A proof version of the problem also asks, in case the group is not nilpotent of class at most $$c$$, for an explicit tuple of length $$c + 1$$ of elements of the group for which the iterated left-normed commutator is not the identity.

Testing whether a given group has precisely a given nilpotency class
The above problem is equivalent to the precise class nilpotency testing problem: determining whether the nilpotency class of a given group is precisely $$c$$, i.e., whether the group has class $$c$$ but not $$c - 1$$. Here's how:


 * Reducing the precise class nilpotency testing problem for $$c$$ to the fixed-class nilpotency testing problem: Check that we get a Yes for the fixed-class nilpotency testing problem for $$c$$ and a No for $$c - 1$$.
 * Reducing the fixed-class nilpotency testing problem for $$c$$ to the precise class nilpotency testing problem: Check that we get a Yes for at least (and hence exactly) one of the values $$0,1,2,\dots,c$$.

Determination of precise nilpotency class
The above problem is also equivalent to the problem of determining the precise nilpotency class as follows:


 * Reducing the precise nilpotency class determination problem to the fixed-class nilpotency testing problem: Do the fixed-class nilpotency testing for 1,2,3,... and stop as soon as you get a Yes.
 * Reducing the fixed-class nilpotency testing problem for class $$c$$to the precise nilpotency class determination problem: Determine the precise nilpotency class, then check whether it exists and is less than or equal to $$c$$.

Black-box group algorithms
These work for a group specified by means of an encoding.