36 #ifndef __PRESTAF_PREDICATE_H__
37 # define __PRESTAF_PREDICATE_H__
41 # include <sataf/sataf.h>
126 prestaf_predicate_true (
void);
129 prestaf_predicate_false (
void);
prestaf_predicate * prestaf_predicate_equiv(prestaf_predicate *P1, prestaf_predicate *P2)
Logical equality.
Generic simple linked list.
prestaf_predicate * prestaf_predicate_multi_and(ccl_list *predicates)
N-ary conjunction.
prestaf_predicate * prestaf_predicate_create(ccl_list *vars, sataf_msa *rel)
Contructor of predicates.
prestaf_predicate * prestaf_predicate_not(prestaf_predicate *P)
Compute the complement of a predictate P
struct prestaf_predicate_st prestaf_predicate
Structure representing a predicate. The variables of the predicate take their value into ...
sataf_msa * prestaf_predicate_get_relation(prestaf_predicate *P)
Relation of a predicate.
int prestaf_predicate_display_vectors(ccl_log_type log, prestaf_predicate *P)
Display the assignments belonging to the predicate ::P.
ccl_list * prestaf_predicate_get_variables(prestaf_predicate *P)
Variables of a predicate.
prestaf_predicate * prestaf_predicate_and(prestaf_predicate *P1, prestaf_predicate *P2)
Binary conjunction.
struct ccl_list_st ccl_list
Type of a generic list.
prestaf_predicate * prestaf_predicate_forall(ccl_ustring v, prestaf_predicate *P)
Universal projection.
prestaf_predicate * prestaf_predicate_add_reference(prestaf_predicate *P)
Increments the counter of reference of P.
Module gathering routines frequently used for the manipulation of string.
void prestaf_predicate_rename(prestaf_predicate *P, ccl_list *vars)
Relabelling of the variables.
char * ccl_ustring
Alias type for strings that are stored in an internal dictionary and then can be used as identifiers ...
void prestaf_predicate_del_reference(prestaf_predicate *P)
Decrements the counter of reference of P.
prestaf_predicate * prestaf_predicate_imply(prestaf_predicate *P1, prestaf_predicate *P2)
Logical implication.
enum ccl_log_type_enum ccl_log_type
Enum that indicates which kind of message has to be displayed. Each kind of message can be displayed ...
prestaf_predicate * prestaf_predicate_or(prestaf_predicate *P1, prestaf_predicate *P2)
Binary disjunction.
prestaf_predicate * prestaf_predicate_multi_or(ccl_list *predicates)
N-ary disjunction.
prestaf_predicate * prestaf_predicate_exists(ccl_ustring v, prestaf_predicate *P)
Existential projection.
struct sataf_msa_st sataf_msa
Type for the data structure encoding Marked Shared Automata.