private static void checkArity(final Tree<? extends Op<?>, ?> node) {
		if (node.value() != null &&
			node.value().arity() != node.childCount())
		{
			throw new IllegalArgumentException(format(
				"Op arity != child count: %d != %d",
				node.value().arity(), node.childCount()
			));
		}
	}
Validates the given program tree.

@param program the program to validate
@throws NullPointerException if the given {@code program} is {@code null}
@throws IllegalArgumentException if the given operation tree is invalid,
        which means there is at least one node where the operation arity
        and the node child count differ.
jenetics.prog/src/main/java/io/jenetics/prog/op/Program.java