9 research outputs found

    ISALOG(¬): A Deductive Language with Negation for Complex-Object Databases with Hierarchies.

    No full text
    IsaLog(¬) is a research activity aimed at developing a framework that integrates deductive and object-oriented features. The data model has complex objects with classes, relations, and isa hierarchies, and the language is rule based. The main issue is the definition of the semantics of the language. For the (positive) IsaLog framework three different semantics are given and proven to be equivalent: a model-theoretic semantics, a fixpoint semantics, and a semantics based on a reduction to ordinary logic programming with functionasymbols. Then the semantics of the IsaLog¬ language is proposed. It presents novel features mostly due to the interaction of hierarchies with negation in the body of rules. Two semantics are presented for IsaLog¬ programs: a stratified semantics based on an original notion of stratification, which takes into account hierarchies, and a reduction to logic programming with function symbols. The two semantics are then shown to be equivalent. The solutions are based on the use of explicit Skolem functors, which represent a powerful tool for the management of object identifiers

    ISALOG- : A Deductive Language with Negation for Complex-Object Databases with Hierarchies

    No full text
    The IsaLog ¬ model and language are presented. The model has complex objects with classes, relations, and isa hierarchies. The language is strongly typed and declarative. The main issue is the definition of the semantics of the IsaLog language. The novel features are mostly due to the interaction of hierarchies with negation in the body of rules. Two semantics are presented and shown to be equivalent: a stratified semantics based on an original notion of stratification, needed in order to correctly deal with hierarchies, and a reduction to logic programming with function symbols. The solutions are based on a new technique (explicit Skolem functors) that provides a powerful tool for manipulating object identifiers
    corecore