Formal Knowledge Representation and Automated Reasoning for the Study of Archaeological Stratigraphy...

16
Formal Knowledge Representation and Automated Reasoning for the Study of Archaeological Stratigraphy M. Cattani, G. Mantegari , A. Mosca, M. Palmonari Department of Archaeology, University of Bologna (Italy) Department of Informatics, Systems and Communication, University of Milan Bicocca (Italy)

Transcript of Formal Knowledge Representation and Automated Reasoning for the Study of Archaeological Stratigraphy...

Page 1: Formal Knowledge Representation and Automated Reasoning for the Study of Archaeological Stratigraphy M. Cattani, G. Mantegari, A. Mosca, M. Palmonari Department.

Formal Knowledge Representation and Automated Reasoningfor the Study of Archaeological Stratigraphy

M. Cattani, G. Mantegari, A. Mosca, M. Palmonari

Department of Archaeology, University of Bologna (Italy)

Department of Informatics, Systems and Communication,

University of Milan Bicocca (Italy)

Page 2: Formal Knowledge Representation and Automated Reasoning for the Study of Archaeological Stratigraphy M. Cattani, G. Mantegari, A. Mosca, M. Palmonari Department.

Computerized stratigraphy has a long research history and brought to the creation of some succesfull softwares (e.g. ArchEd, Stratify) which can guarantee a quite satisfiable management of the stratigraphic sequences.

Some problems concern:• the difficulty to manage large/huge datasets• the difficulty to integrate a digital matrix representation with other softwares (e.g. GIS)• the difficulty to handle multilinear stratigraphic sequences• the difficulty to manage uncertain or insufficient knowledge• ...

At a more general level, which concerns the model itself, some other issues can be found. For example the Harris model has been criticized from different points of view (see the Harris-Carver debate) but it still represent the principal methology for modelling and representing the stratigraphic sequence.

but...this is half of the problem...

Page 3: Formal Knowledge Representation and Automated Reasoning for the Study of Archaeological Stratigraphy M. Cattani, G. Mantegari, A. Mosca, M. Palmonari Department.

The project aims at proposing a new approach for the study of thearchaeological stratigrafy by means of Computer Science techniquesand tools

Our main objective, in this phase, are to investigate:

• the possibility of modelling the stratigraphy by means offormal knowledge representation• the possibility of performing automated reasoning with respect to:

• the spatial component• the temporal component

We are not interested, in this phase, to the visualization of the stratigraphic sequence.

In our vision, the graphical representation is just the last step and, provided the logical model is adequate and the automatic reasoning works well, it is a minor problem.

Of course we aim at realizing a software or a set of tools, butat the moment we focus mainly on the creation of a fomal modelrather than on the specification of the software requirements.

The project isat the very beginning

Page 4: Formal Knowledge Representation and Automated Reasoning for the Study of Archaeological Stratigraphy M. Cattani, G. Mantegari, A. Mosca, M. Palmonari Department.

There are different systems which can be used for reasoning with programs of A-Prolog. The choice of the system normally depends on the form of the program and the type of queries one wants to be answered.

In recent years however a number of very efficient algorithms were developed to reason with programs with “finite Herbrand universes”, and a number of modern A-Prolog systems are now available. One of the best known systems is DLV.

The DLV System

DLV can be seen as a logic programming system or as a deductive database system. In order to be consistent with deductive database terminology, the input is separated into the extensional database (EDB), which is a collection of facts, and the intensional database (IDB), which is used to deduce facts.

Page 5: Formal Knowledge Representation and Automated Reasoning for the Study of Archaeological Stratigraphy M. Cattani, G. Mantegari, A. Mosca, M. Palmonari Department.

A x

i o

m

A

l p

h a

b e

t Variables (‘Terms’)

X, Y, Z, ...

Constants (‘Terms’)us1, us2, us3, ...

Unary Predicates (‘Atoms’)cutUnit(X), trench(X), wall(X), ...

Binary Predicates (‘Atoms’)cover(X,Y), fill(X,Y), cut(X,Y), ...

Positive & Negative Literals (‘Atoms’ or ‘Classically Negated Atoms’) wall(X), cut(X,Y),..., cover(X,Y), fill(X,Y), ...

Ground Literalscover(u6,u3), filledBy(u4,u8), ...

naf-Literals (‘Atoms’ or ‘Atoms preceeded by not’)..., not cover(X,Y), not fill(X,Y), ...

RulesdirPostTo(Z,Y) :- equalTo(X,Y),cover(Z,X).contemporary(X,Y) :- equalTo(X,Y).

Constraints:- attachTo(X,X).

• Factsequal(X,X).cover(u6,u3).

Page 6: Formal Knowledge Representation and Automated Reasoning for the Study of Archaeological Stratigraphy M. Cattani, G. Mantegari, A. Mosca, M. Palmonari Department.

-cover(Y,X) :- cover(X,Y).coveredBy(X,Y) :- cover(Y,X).cover(X,Y) :- coveredBy(Y,X).

-cut(Y,X) :- cut(X,Y).cuttedBy(X,Y) :- cut(Y,X).cut(X,Y) :- cuttedBy(Y,X).

-fill(Y,X) :- fill(X,Y).filledBy(X,Y) :- fill(Y,X).fill(X,Y) :- filledBy(Y,X).:- fill(X,Y),not slash(Y).

-leanOn(Y,X) :- leanOn(X,Y).hasLeaned(Y,X) :- leanOn(X,Y).leanOn(Y,X) :- hasLeaned(X,Y).

:- attachTo(X,X).attachTo(Y,X) :- attachTo(X,Y).

equalTo(Y,X) :- equalTo(X,Y).equalTo(X,Z) :- equalTo(X,Y),equalTo(Y,Z).

Primitive spatial relationships

:- dirPostTo(X,X).-dirPostTo(X,Y) :- dirPostTo(Y,X).

:- dirAntTo(X,X).-dirAntTo(X,Y) :- dirAntTo(Y,X).

dirAntTo(Y,X) :- dirPostTo(X,Y).

posteriorTo(X,Y) :- dirPostTo(X,Y).posteriorTo(X,Y) :- posteriorTo(X,Z),dirPostTo(Z,Y).

-posteriorTo(X,Y) :- posteriorTo(Y,X).anteriorTo(Y,X) :- posteriorTo(X,Y).

contemporary(X,Y) :- contemporary(Y,X).contemporary(X,Z) :- contemporary(X,Y),contemporary(Y,Z).

Primitive temporal relationships

dirPostTo(X,Y) :- cover(X,Y).dirPostTo(X,Y) :- cut(X,Y).dirPostTo(X,Y) :- fill(X,Y).dirPostTo(X,Y) :- leanOn(X,Y).

contemporary(X,Y) :- attachTo(X,Y).contemporary(X,Y) :- equalTo(X,Y).-contemporary(X,Y) :- -equalTo(X,Y).

Spatial -> Temporal mapping

posteriorTo(Y,W) :- leanOn(X,Y),leanOn(X,Z),cover(Y,Z),cover(X,W),leanOn(W,Z).

posteriorTo(X,W) :- leanOn(X,Y),leanOn(Z,W),cover(X,Z),cover(Y,W).posteriorTo(Y,Z) :- leanOn(X,Y),leanOn(Z,W),cover(X,Z),cover(Y,W).

posteriorTo(Z,Y) :- contemporary(X,Y),posteriorTo(Z,X).posteriorTo(Z,X) :- contemporary(X,Y),posteriorTo(Z,Y).

dirPostTo(Z,Y) :- equalTo(X,Y),cover(Z,X).dirPostTo(Z,X) :- equalTo(X,Y),cover(Z,Y).

-contemporary(Z,Y) :- equalTo(X,Y),posteriorTo(X,Z).-contemporary(Z,X) :- equalTo(X,Y),posteriorTo(Y,Z).

contemporary(X,Y) v posteriorTo(X,Y) v posteriorTo(Y,X) :- us(X),us(Y),not posteriorTo(X,Y),not -posterior(X,Y).

Mixed axioms & multiple model generation

Page 7: Formal Knowledge Representation and Automated Reasoning for the Study of Archaeological Stratigraphy M. Cattani, G. Mantegari, A. Mosca, M. Palmonari Department.

inferencedchronological

models

txt

factsJDBCODBC

txt

MS accessdb

DLV

axioms &

rulestxt

...cover(u622,u613).cover(u622,u618).cover(u802,u613).cover(u803,u613).coveredBy(u414,u433).coveredBy(u414,u46).coveredBy(u415,u414).coveredBy(u419,u414).coveredBy(u419,u415).coveredBy(u419,u450).coveredBy(u425,u428).coveredBy(u427,u419)....

...-cover(Y,X) :- cover(X,Y).coveredBy(X,Y) :- cover(Y,X).cover(X,Y) :- coveredBy(Y,X)....equalTo(Y,X) :- equalTo(X,Y).equalTo(X,Z) :- equalTo(X,Y),equalTo(Y,Z)....

...posteriorTo(u414,u415), posteriorTo(u414,u419), posteriorTo(u414,u450), posteriorTo(u414,u612), posteriorTo(u414,u427), posteriorTo(u414,u428), posteriorTo(u414,u439), posteriorTo(u414,u452), posteriorTo(u414,u453), posteriorTo(u414,u605), posteriorTo(u414,u609)...

Page 8: Formal Knowledge Representation and Automated Reasoning for the Study of Archaeological Stratigraphy M. Cattani, G. Mantegari, A. Mosca, M. Palmonari Department.

DLV [build BEN/Oct 11 2007 gcc 3.4.5 (mingw special)]

{posteriorTo(us1,us2), posteriorTo(us1,us3), posteriorTo(us2,us5), posteriorTo(us3,us5), posteriorTo(us3,us4), posteriorTo(us4,us5), posteriorTo(us2,us3), posteriorTo(us2,us4}}

{posteriorTo(us1,us2), posteriorTo(us1,us3), posteriorTo(us2,us5), posteriorTo(us3,us5), posteriorTo(us3,us4), posteriorTo(us4,us5), posteriorTo(us3,us2), posteriorTo(us4,us2)}

{posteriorTo(us1,us2), posteriorTo(us1,us3), posteriorTo(us2,us5), posteriorTo(us3,us5), posteriorTo(us3,us4), posteriorTo(us4,us5), posteriorTo(us3,us2), posteriorTo(us2,us4)}

{posteriorTo(us1,us2), posteriorTo(us1,us3), posteriorTo(us2,us5), posteriorTo(us3,us5), posteriorTo(us3,us4), posteriorTo(us4,us5), posteriorTo(us3,us2), contemporary(us4,us2), contemporary(us2,us4)}

{posteriorTo(us1,us2), posteriorTo(us1,us3), posteriorTo(us2,us5), posteriorTo(us3,us5), posteriorTo(us3,us4), posteriorTo(us4,us5), contemporary(us3,us2), posteriorTo(us2,us4), contemporary(us2,us3)}

Lack of knowledge generates multiple models

Page 9: Formal Knowledge Representation and Automated Reasoning for the Study of Archaeological Stratigraphy M. Cattani, G. Mantegari, A. Mosca, M. Palmonari Department.

contemporary(X,Y) OR posteriorTo(X,Y) OR posteriorTo(Y,X) :- us(X),us(Y), not posteriorTo(X,Y), not -posteriorTo(X,Y).

Archeometrical SpecificationS

dirPostTo(Z,X) :- fill(X,Y),fill(Z,Y),wall(X),trench(Z).

Managing the uncertainty: prune the models!

Adding new information to the program may force a reasoner associated with it to withdraw its previous conclusions about the world

contemporary(X,Y) :- equalTo(X,Y).

-contemporary(X,Y) :- -equalTo(X,Y).

Ontological SpecificationS

contemporary(X,Y) OR posteriorTo(X,Y) OR posteriorTo(Y,X) :- us(X),us(Y), not posteriorTo(X,Y), not -posteriorTo(X,Y).

Page 10: Formal Knowledge Representation and Automated Reasoning for the Study of Archaeological Stratigraphy M. Cattani, G. Mantegari, A. Mosca, M. Palmonari Department.

DATA UPDATE

cover(us1,us2).cover(us1,us3).fill(us2,us4).fill(us3,us4).

equalTo(us2,us4).

Archeometrical SpecS

DATA

cover(us1,us2).cover(us1,us3).fill(us2,us4).fill(us3,us4).

DLV [build BEN/Oct 11 2007 gcc 3.4.5 (mingw special)]

{posteriorTo(us1,us2), posteriorTo(us1,us3), posteriorTo(us1,us4), posteriorTo(us2,us4), posteriorTo(us3,us4), posteriorTo(us2,us3)}

{posteriorTo(us1,us2), posteriorTo(us1,us3), posteriorTo(us1,us4), posteriorTo(us2,us4), posteriorTo(us3,us4), posteriorTo(us3,us2)}

{posteriorTo(us1,us2), posteriorTo(us1,us3), posteriorTo(us1,us4), posteriorTo(us2,us4), posteriorTo(us3,us4), contemporary(us3,us2), contemporary(us2,us3)}

DLV [build BEN/Oct 11 2007 gcc 3.4.5 (mingw special)]

{posteriorTo(us1,us2), posteriorTo(us1,us3), posteriorTo(us1,us4), posteriorTo(us2,us4), posteriorTo(us3,us4), contemporary(us3,us2), contemporary(us2,us3)}

Page 11: Formal Knowledge Representation and Automated Reasoning for the Study of Archaeological Stratigraphy M. Cattani, G. Mantegari, A. Mosca, M. Palmonari Department.

Archeometrical SpecS

DATA

cover(us1,us2).cover(us1,us3).fill(us2,us4).fill(us3,us4).

DLV [build BEN/Oct 11 2007 gcc 3.4.5 (mingw special)]

{posteriorTo(us1,us2), posteriorTo(us1,us3), posteriorTo(us1,us4), posteriorTo(us2,us4), posteriorTo(us3,us4), posteriorTo(us2,us3)}

{posteriorTo(us1,us2), posteriorTo(us1,us3), posteriorTo(us1,us4), posteriorTo(us2,us4), posteriorTo(us3,us4), posteriorTo(us3,us2)}

{posteriorTo(us1,us2), posteriorTo(us1,us3), posteriorTo(us1,us4), posteriorTo(us2,us4), posteriorTo(us3,us4), contemporary(us3,us2), contemporary(us2,us3)}

DATA UPDATE

cover(us1,us2).cover(us1,us3).fill(us2,us4).fill(us3,us4).

-equalTo(us2,us4).

DLV [build BEN/Oct 11 2007 gcc 3.4.5 (mingw special)]

{posteriorTo(us1,us2), posteriorTo(us1,us3), posteriorTo(us1,us4), posteriorTo(us2,us4), posteriorTo(us3,us4), posteriorTo(us2,us3)}

{posteriorTo(us1,us2), posteriorTo(us1,us3), posteriorTo(us1,us4), posteriorTo(us2,us4), posteriorTo(us3,us4), posteriorTo(us3,us2)}

Page 12: Formal Knowledge Representation and Automated Reasoning for the Study of Archaeological Stratigraphy M. Cattani, G. Mantegari, A. Mosca, M. Palmonari Department.

DATA UPDATE

cover(us1,us2).cover(us1,us3).fill(us2,us4).fill(us3,us4).

wall(us2).trench(us3).

Ontological SpecSDATA

cover(us1,us2).cover(us1,us3).fill(us2,us4).fill(us3,us4).

DLV [build BEN/Oct 11 2007 gcc 3.4.5 (mingw special)]

{posteriorTo(us1,us2), posteriorTo(us1,us3), posteriorTo(us1,us4), posteriorTo(us2,us4), posteriorTo(us3,us4), posteriorTo(us2,us3)}

{posteriorTo(us1,us2), posteriorTo(us1,us3), posteriorTo(us1,us4), posteriorTo(us2,us4), posteriorTo(us3,us4), posteriorTo(us3,us2)}

{posteriorTo(us1,us2), posteriorTo(us1,us3), posteriorTo(us1,us4), posteriorTo(us2,us4), posteriorTo(us3,us4), contemporary(us3,us2), contemporary(us2,us3)}

DLV [build BEN/Oct 11 2007 gcc 3.4.5 (mingw special)]

{posteriorTo(us1,us2), posteriorTo(us1,us3), posteriorTo(us1,us4), posteriorTo(us2,us4), posteriorTo(us3,us4), posteriorTo(us3,us2)}

Page 13: Formal Knowledge Representation and Automated Reasoning for the Study of Archaeological Stratigraphy M. Cattani, G. Mantegari, A. Mosca, M. Palmonari Department.

cover(u6,u1).cover(u6,u4).cover(u6,u2).cover(u6,u3).cover(u2,u12).cover(u3,u12).cover(u1,u7).cover(u9,u11).cover(u4,u10).cover(u10,u11).cut(u5,u1).cut(u5,u9).cut(u5,u11).cut(u5,u10).cut(u5,u4).cut(u8,u9).fill(u2,u5).fill(u3,u5).fill(u12,u5).fill(u7,u8).wall(u2).trench(u3).

A simple Harris’s example...

DLV [build BEN/Oct 11 2007 gcc 3.4.5 (mingw special)]

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u11,u11), contemporary(u10,u10), contemporary(u5,u5), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u1,u7), linPostTo(u4,u10), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u9,u11), linPostTo(u5,u4), linPostTo(u8,u9)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u11,u11), contemporary(u10,u10), contemporary(u5,u5), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u1,u7), linPostTo(u4,u10), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u10,u11), linPostTo(u5,u1), linPostTo(u8,u9)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u9,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u4,u9), contemporary(u9,u9), contemporary(u11,u11), contemporary(u10,u10), contemporary(u5,u5), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u1,u7), linPostTo(u4,u10), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u10,u11), linPostTo(u5,u1), linPostTo(u8,u9)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u11,u11), contemporary(u10,u10), contemporary(u5,u5), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u1,u7), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u10,u11), linPostTo(u5,u1)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u11,u11), contemporary(u10,u10), contemporary(u5,u5), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u1,u7), linPostTo(u4,u10), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u9,u11), linPostTo(u5,u1)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u10,u9), contemporary(u11,u11), contemporary(u9,u10), contemporary(u10,u10), contemporary(u5,u5), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u1,u7), linPostTo(u4,u10), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u9,u11), linPostTo(u10,u11), linPostTo(u5,u1)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u10,u1), contemporary(u4,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u11,u11), contemporary(u1,u10), contemporary(u10,u10), contemporary(u5,u5), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u1,u7), linPostTo(u4,u10), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u9,u11), linPostTo(u5,u4), linPostTo(u8,u9)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u11,u11), contemporary(u10,u10), contemporary(u5,u5), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u4,u10), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u9,u11), linPostTo(u5,u1), linPostTo(u8,u9)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u1), contemporary(u1,u4), contemporary(u4,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u11,u11), contemporary(u10,u10), contemporary(u5,u5), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u4,u10), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u9,u11), linPostTo(u5,u1), linPostTo(u5,u4), linPostTo(u8,u9)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u11,u11), contemporary(u10,u10), contemporary(u5,u5), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u9,u11), linPostTo(u5,u4), linPostTo(u8,u9)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u8,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u11,u11), contemporary(u10,u10), contemporary(u5,u5), contemporary(u4,u8), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u1,u7), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u10,u11), linPostTo(u5,u1), linPostTo(u8,u9)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u8,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u11,u11), contemporary(u10,u10), contemporary(u5,u5), contemporary(u4,u8), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u1,u7), linPostTo(u4,u10), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u9,u11), linPostTo(u5,u1)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u8,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u10,u9), contemporary(u11,u11), contemporary(u9,u10), contemporary(u10,u10), contemporary(u5,u5), contemporary(u4,u8), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u1,u7), linPostTo(u4,u10), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u9,u11), linPostTo(u10,u11), linPostTo(u5,u1), linPostTo(u8,u9)}

... generates 41 admissible models!

Page 14: Formal Knowledge Representation and Automated Reasoning for the Study of Archaeological Stratigraphy M. Cattani, G. Mantegari, A. Mosca, M. Palmonari Department.

DLV [build BEN/Oct 11 2007 gcc 3.4.5 (mingw special)]

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u11,u11), contemporary(u10,u10), contemporary(u5,u5), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u1,u7), linPostTo(u4,u10), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u9,u11), linPostTo(u5,u4), linPostTo(u8,u9)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u11,u11), contemporary(u10,u10), contemporary(u5,u5), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u1,u7), linPostTo(u4,u10), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u10,u11), linPostTo(u5,u1), linPostTo(u8,u9)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u9,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u4,u9), contemporary(u9,u9), contemporary(u11,u11), contemporary(u10,u10), contemporary(u5,u5), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u1,u7), linPostTo(u4,u10), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u10,u11), linPostTo(u5,u1), linPostTo(u8,u9)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u11,u11), contemporary(u10,u10), contemporary(u5,u5), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u1,u7), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u10,u11), linPostTo(u5,u1)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u11,u11), contemporary(u10,u10), contemporary(u5,u5), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u1,u7), linPostTo(u4,u10), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u9,u11), linPostTo(u5,u1)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u10,u9), contemporary(u11,u11), contemporary(u9,u10), contemporary(u10,u10), contemporary(u5,u5), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u1,u7), linPostTo(u4,u10), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u9,u11), linPostTo(u10,u11), linPostTo(u5,u1)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u10,u1), contemporary(u4,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u11,u11), contemporary(u1,u10), contemporary(u10,u10), contemporary(u5,u5), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u1,u7), linPostTo(u4,u10), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u9,u11), linPostTo(u5,u4), linPostTo(u8,u9)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u11,u11), contemporary(u10,u10), contemporary(u5,u5), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u4,u10), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u9,u11), linPostTo(u5,u1), linPostTo(u8,u9)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u1), contemporary(u1,u4), contemporary(u4,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u11,u11), contemporary(u10,u10), contemporary(u5,u5), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u4,u10), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u9,u11), linPostTo(u5,u1), linPostTo(u5,u4), linPostTo(u8,u9)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u11,u11), contemporary(u10,u10), contemporary(u5,u5), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u9,u11), linPostTo(u5,u4), linPostTo(u8,u9)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u8,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u11,u11), contemporary(u10,u10), contemporary(u5,u5), contemporary(u4,u8), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u1,u7), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u10,u11), linPostTo(u5,u1), linPostTo(u8,u9)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u8,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u11,u11), contemporary(u10,u10), contemporary(u5,u5), contemporary(u4,u8), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u1,u7), linPostTo(u4,u10), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u9,u11), linPostTo(u5,u1)}

{contemporary(u6,u6), contemporary(u1,u1), contemporary(u4,u4), contemporary(u8,u4), contemporary(u2,u2), contemporary(u3,u3), contemporary(u12,u12), contemporary(u7,u7), contemporary(u9,u9), contemporary(u10,u9), contemporary(u11,u11), contemporary(u9,u10), contemporary(u10,u10), contemporary(u5,u5), contemporary(u4,u8), contemporary(u8,u8), linPostTo(u6,u3), linPostTo(u1,u7), linPostTo(u4,u10), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u9,u11), linPostTo(u10,u11), linPostTo(u5,u1), linPostTo(u8,u9)}

DLV [build BEN/Oct 11 2007 gcc 3.4.5 (mingw special)]

{linPostTo(u6,u3), linPostTo(u1,u7), linPostTo(u4,u10), linPostTo(u2,u12), linPostTo(u3,u2), linPostTo(u12,u5), linPostTo(u7,u8), linPostTo(u9,u11), linPostTo(u10,u11), linPostTo(u5,u1), linPostTo(u5,u4), linPostTo(u8,u9), contemporary(u1,u4), contemporary(u9,u10)}

equalTo(u1,u4).equalTo(u9,u10).

The pruned Harris’s example

Page 15: Formal Knowledge Representation and Automated Reasoning for the Study of Archaeological Stratigraphy M. Cattani, G. Mantegari, A. Mosca, M. Palmonari Department.

GraphViz visualization

digraph matrix

{u1 -> u5; u1 -> u3; u1 -> u4; u5 -> u15; u3 -> u12; u4 -> u8; u4 -> u25; u12 -> u20; u20 -> u22; u9 -> u12; u22 -> u39; u39 -> u40; u15 -> u18; u18 -> u12; u90 -> u94; u90 -> u91; u107 -> u112; u107 -> u130; u107 -> u120; u138 -> u140; u63 -> u80; u43 -> u59; u44 -> u80; u47 -> u49; u41 -> u74; u42 -> u70; u59 -> u61; u80 -> u87; u61 -> u76; u76 -> u89; u70 -> u82; u82 -> u88; u88 -> u90; u74 -> u84; u84 -> u86; u86 -> u90; u87 -> u90; u89 -> u90; u92 -> u107; u49 -> u55; u55 -> u83; u83 -> u90; u93 -> u99; u99 -> u100; u100 -> u107; u97 -> u99; u94 -> u99; u91 -> u104; u104 -> u107; u112 -> u138; u130 -> u134; u120 -> u125; u134 -> u138; u125 -> u138}

GraphVizgraph

file

dot

inferencedchronological

models

txt

jpeg

png

ps

svg

vrml

gif

...

Page 16: Formal Knowledge Representation and Automated Reasoning for the Study of Archaeological Stratigraphy M. Cattani, G. Mantegari, A. Mosca, M. Palmonari Department.

Conclusions and future work

We think that to face the problem of archaeological stratigraphy in its entirety we have to start from the Harris model but to consider developing and managing other models.

To manage uncertainty is not just to simplify the model because it is easier to manage it

We aim at testing DLV on large datasets (up to 10.000 units) with a particular regard to uncertain situations

Commonsense reasoning is the way archaeologists reason when recording stratigraphy

To manage uncertainty means also to try to go beyond incomplete or uncertain knowledge