code: public boolean validSignature(final Signature sig) {
          if (signatures.contains(sig)) return true;
  
          for (final Signature signature : signatures) {
              final SemanticStatus status = signature.matches(sig);
              if (status == VALID) return true;
          }
          return false;
      }
docs: Returns {@code true} if the provided signature is valid for this
  function, {@code false} otherwise.
  <p>
  You can access the semantic status of invalid signatures (those returning
  {@code false} here) via {@link #getStatus(Signature) getStatus}.
  </p>
  
  @param sig {@link Signature}
  @return boolean
  @see #getStatus(Signature)