All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.sosy_lab.java_smt.api.FunctionDeclaration Maven / Gradle / Ivy

The newest version!
// This file is part of JavaSMT,
// an API wrapper for a collection of SMT solvers:
// https://github.com/sosy-lab/java-smt
//
// SPDX-FileCopyrightText: 2022 Dirk Beyer 
//
// SPDX-License-Identifier: Apache-2.0

package org.sosy_lab.java_smt.api;

import com.google.common.collect.ImmutableList;
import com.google.errorprone.annotations.Immutable;

/**
 * Function declaration, for both UFs and built-in functions (theory and boolean).
 *
 * 

Can be instantiated using {@link FormulaManager#makeApplication} */ @Immutable public interface FunctionDeclaration { /** * @return Type of the function (LT / GT / UF / etc...). */ FunctionDeclarationKind getKind(); /** * @return Name of the function (UF name / "LT" / etc...). */ String getName(); /** * @return Sort of the function output. */ FormulaType getType(); /** * @return Sorts of the arguments. */ ImmutableList> getArgumentTypes(); }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy