(( <EXPRESSION> ))
This command evaluates the arithmetic expression <EXPRESSION>.
If the expression evaluates to 0 then the exit code of the expression is set to 1 (FALSE). If the expression evaluates to something else than 0, then the exit code of the expression is set to 0 (TRUE).
This is done to map the arithmetic "true" and "false" to the shell exit codes for TRUE and FALSE.
The functionality basically is equivalent to what the ''let'' builtin command does. The arithmetic evaluation compound command should be preferred.
Discussion