
it.unibz.inf.ontop.substitution.InjectiveSubstitution Maven / Gradle / Ivy
package it.unibz.inf.ontop.substitution;
import it.unibz.inf.ontop.model.term.ImmutableTerm;
import it.unibz.inf.ontop.model.term.Variable;
import it.unibz.inf.ontop.substitution.impl.SubstitutionImpl;
import java.util.Set;
import java.util.function.Function;
/**
* An injective substitution
* (no value in the substitution map is shared by two keys)
*/
public interface InjectiveSubstitution extends Substitution {
@Override
InjectiveSubstitution restrictDomainTo(Set set);
@Override
InjectiveSubstitution removeFromDomain(Set set);
@Override
InjectiveSubstitution restrictRangeTo(Class extends S> type);
@Override
InjectiveSubstitution transform(Function function);
@Override
Builder> builder();
interface Builder> extends Substitution.Builder {
@Override
InjectiveSubstitution build();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy