Ontology-Based Classification of Molecules: a Logic Programming Approach

80
ONTOLOGY-BASED C LASSIFICATION OF MOLECULES : A L OGIC P ROGRAMMING APPROACH Despoina Magka Department of Computer Science, University of Oxford November 30, 2012

description

We describe a prototype that performs structure-based classification of molecular structures. The software we present implements a sound and com- plete reasoning procedure of a formalism that extends logic programming and builds upon the DLV deductive databases system. We capture a wide range of chemical classes that are not expressible with OWL-based formalisms such as cyclic molecules, saturated molecules and alkanes. In terms of performance, a no- ticeable improvement is observed in comparison with previous approaches. Our evaluation has discovered subsumptions that are missing from the the manually curated ChEBI ontology as well as discrepancies with respect to existing subclass relations. We illustrate thus the potential of an ontology language which is suit- able for the Life Sciences domain and exhibits an encouraging balance between expressive power and practical feasibility.

Transcript of Ontology-Based Classification of Molecules: a Logic Programming Approach

Page 1: Ontology-Based Classification of Molecules: a Logic Programming Approach

ONTOLOGY-BASED

CLASSIFICATION OF MOLECULES:A LOGIC PROGRAMMING APPROACH

Despoina Magka

Department of Computer Science, University of Oxford

November 30, 2012

Page 2: Ontology-Based Classification of Molecules: a Logic Programming Approach

BIOINFORMATICS AND SEMANTIC TECHNOLOGIES

Life sciences data deluge

Hierarchical organisation of biochemical knowledge

Fast, automatic and repeatable classification driven bySemantic technologiesWeb Ontology Language, a W3C standard familyof logic-based formalismsOWL bio- and chemo-ontologies widely adopted

1

Page 3: Ontology-Based Classification of Molecules: a Logic Programming Approach

BIOINFORMATICS AND SEMANTIC TECHNOLOGIES

Life sciences data delugeHierarchical organisation of biochemical knowledge

Fast, automatic and repeatable classification driven bySemantic technologiesWeb Ontology Language, a W3C standard familyof logic-based formalismsOWL bio- and chemo-ontologies widely adopted

1

Page 4: Ontology-Based Classification of Molecules: a Logic Programming Approach

BIOINFORMATICS AND SEMANTIC TECHNOLOGIES

Life sciences data delugeHierarchical organisation of biochemical knowledge

Fast, automatic and repeatable classification driven bySemantic technologiesWeb Ontology Language, a W3C standard familyof logic-based formalismsOWL bio- and chemo-ontologies widely adopted

1

Page 5: Ontology-Based Classification of Molecules: a Logic Programming Approach

BIOINFORMATICS AND SEMANTIC TECHNOLOGIES

Life sciences data delugeHierarchical organisation of biochemical knowledge

Fast, automatic and repeatable classification driven bySemantic technologiesWeb Ontology Language, a W3C standard familyof logic-based formalismsOWL bio- and chemo-ontologies widely adopted

1

Page 6: Ontology-Based Classification of Molecules: a Logic Programming Approach

BIOINFORMATICS AND SEMANTIC TECHNOLOGIES

Life sciences data delugeHierarchical organisation of biochemical knowledge

Fast, automatic and repeatable classification driven bySemantic technologies

Web Ontology Language, a W3C standard familyof logic-based formalismsOWL bio- and chemo-ontologies widely adopted

1

Page 7: Ontology-Based Classification of Molecules: a Logic Programming Approach

BIOINFORMATICS AND SEMANTIC TECHNOLOGIES

Life sciences data delugeHierarchical organisation of biochemical knowledge

Fast, automatic and repeatable classification driven bySemantic technologiesWeb Ontology Language, a W3C standard familyof logic-based formalisms

OWL bio- and chemo-ontologies widely adopted

1

Page 8: Ontology-Based Classification of Molecules: a Logic Programming Approach

BIOINFORMATICS AND SEMANTIC TECHNOLOGIES

Life sciences data delugeHierarchical organisation of biochemical knowledge

Fast, automatic and repeatable classification driven bySemantic technologiesWeb Ontology Language, a W3C standard familyof logic-based formalismsOWL bio- and chemo-ontologies widely adopted

1

Page 9: Ontology-Based Classification of Molecules: a Logic Programming Approach

THE CHEBI ONTOLOGY

OWL ontology Chemical Entities of Biological Interest

Dictionary of molecules with taxonomical informationPharmaceutical design and study of biological pathways

ChEBI is manually incremented

Currently ~30,000 chemical entities, expands at 3,500/yr

Existing chemical databases describe millions of molecules

Speed up growth by automating chemical classification

2

Page 10: Ontology-Based Classification of Molecules: a Logic Programming Approach

THE CHEBI ONTOLOGY

OWL ontology Chemical Entities of Biological InterestDictionary of molecules with taxonomical information

Pharmaceutical design and study of biological pathways

ChEBI is manually incremented

Currently ~30,000 chemical entities, expands at 3,500/yr

Existing chemical databases describe millions of molecules

Speed up growth by automating chemical classification

2

Page 11: Ontology-Based Classification of Molecules: a Logic Programming Approach

THE CHEBI ONTOLOGY

OWL ontology Chemical Entities of Biological InterestDictionary of molecules with taxonomical information

caffeine is a cyclic molecule

Pharmaceutical design and study of biological pathways

ChEBI is manually incrementedCurrently ~30,000 chemical entities, expands at 3,500/yrExisting chemical databases describe millions of moleculesSpeed up growth by automating chemical classification

2

Page 12: Ontology-Based Classification of Molecules: a Logic Programming Approach

THE CHEBI ONTOLOGY

OWL ontology Chemical Entities of Biological InterestDictionary of molecules with taxonomical information

serotonin is an organic molecule

Pharmaceutical design and study of biological pathways

ChEBI is manually incrementedCurrently ~30,000 chemical entities, expands at 3,500/yrExisting chemical databases describe millions of moleculesSpeed up growth by automating chemical classification

2

Page 13: Ontology-Based Classification of Molecules: a Logic Programming Approach

THE CHEBI ONTOLOGY

OWL ontology Chemical Entities of Biological InterestDictionary of molecules with taxonomical information

ascorbic acid is a carboxylic ester

Pharmaceutical design and study of biological pathways

ChEBI is manually incrementedCurrently ~30,000 chemical entities, expands at 3,500/yrExisting chemical databases describe millions of moleculesSpeed up growth by automating chemical classification

2

Page 14: Ontology-Based Classification of Molecules: a Logic Programming Approach

THE CHEBI ONTOLOGY

OWL ontology Chemical Entities of Biological InterestDictionary of molecules with taxonomical informationPharmaceutical design and study of biological pathways

ChEBI is manually incremented

Currently ~30,000 chemical entities, expands at 3,500/yr

Existing chemical databases describe millions of molecules

Speed up growth by automating chemical classification

2

Page 15: Ontology-Based Classification of Molecules: a Logic Programming Approach

THE CHEBI ONTOLOGY

OWL ontology Chemical Entities of Biological InterestDictionary of molecules with taxonomical informationPharmaceutical design and study of biological pathways

ChEBI is manually incremented

Currently ~30,000 chemical entities, expands at 3,500/yr

Existing chemical databases describe millions of molecules

Speed up growth by automating chemical classification

2

Page 16: Ontology-Based Classification of Molecules: a Logic Programming Approach

THE CHEBI ONTOLOGY

OWL ontology Chemical Entities of Biological InterestDictionary of molecules with taxonomical informationPharmaceutical design and study of biological pathways

ChEBI is manually incremented

Currently ~30,000 chemical entities, expands at 3,500/yr

Existing chemical databases describe millions of molecules

Speed up growth by automating chemical classification

2

Page 17: Ontology-Based Classification of Molecules: a Logic Programming Approach

THE CHEBI ONTOLOGY

OWL ontology Chemical Entities of Biological InterestDictionary of molecules with taxonomical informationPharmaceutical design and study of biological pathways

ChEBI is manually incremented

Currently ~30,000 chemical entities, expands at 3,500/yr

Existing chemical databases describe millions of molecules

Speed up growth by automating chemical classification

2

Page 18: Ontology-Based Classification of Molecules: a Logic Programming Approach

THE CHEBI ONTOLOGY

OWL ontology Chemical Entities of Biological InterestDictionary of molecules with taxonomical informationPharmaceutical design and study of biological pathways

ChEBI is manually incremented

Currently ~30,000 chemical entities, expands at 3,500/yr

Existing chemical databases describe millions of molecules

Speed up growth by automating chemical classification

2

Page 19: Ontology-Based Classification of Molecules: a Logic Programming Approach

EXPRESSIVITY LIMITATIONS OF OWL

1 At least one tree-shaped model for each consistent OWLontology problematic representation of cycles

2 No minimality condition on the models hard to axiomatiseclasses based on the absence of attributes

EXAMPLE

Cyclobutane v ∃(= 4)hasAtom.(Carbon u ∃(= 2)hasBond.Carbon)

C C

CC

Oxygen

OWL-based reasoning support

1 Is cyclobutane a cyclic molecule?2 Is cyclobutane a hydrocarbon?

Required reasoning support

1 Is cyclobutane a cyclic molecule?2 Is cyclobutane a hydrocarbon?

3

Page 20: Ontology-Based Classification of Molecules: a Logic Programming Approach

EXPRESSIVITY LIMITATIONS OF OWL

1 At least one tree-shaped model for each consistent OWLontology problematic representation of cycles

2 No minimality condition on the models hard to axiomatiseclasses based on the absence of attributes

EXAMPLE

Cyclobutane v ∃(= 4)hasAtom.(Carbon u ∃(= 2)hasBond.Carbon)

C C

CC

Oxygen

OWL-based reasoning support

1 Is cyclobutane a cyclic molecule?2 Is cyclobutane a hydrocarbon?

Required reasoning support

1 Is cyclobutane a cyclic molecule?2 Is cyclobutane a hydrocarbon?

3

Page 21: Ontology-Based Classification of Molecules: a Logic Programming Approach

EXPRESSIVITY LIMITATIONS OF OWL

1 At least one tree-shaped model for each consistent OWLontology problematic representation of cycles

2 No minimality condition on the models hard to axiomatiseclasses based on the absence of attributes

EXAMPLE

Cyclobutane v ∃(= 4)hasAtom.(Carbon u ∃(= 2)hasBond.Carbon)

C C

CC

Oxygen

OWL-based reasoning support

1 Is cyclobutane a cyclic molecule?2 Is cyclobutane a hydrocarbon?

Required reasoning support

1 Is cyclobutane a cyclic molecule?2 Is cyclobutane a hydrocarbon?

3

Page 22: Ontology-Based Classification of Molecules: a Logic Programming Approach

EXPRESSIVITY LIMITATIONS OF OWL

1 At least one tree-shaped model for each consistent OWLontology problematic representation of cycles

2 No minimality condition on the models hard to axiomatiseclasses based on the absence of attributes

EXAMPLE

Cyclobutane v ∃(= 4)hasAtom.(Carbon u ∃(= 2)hasBond.Carbon)

C C

CC

Oxygen

OWL-based reasoning support

1 Is cyclobutane a cyclic molecule?2 Is cyclobutane a hydrocarbon?

Required reasoning support

1 Is cyclobutane a cyclic molecule?2 Is cyclobutane a hydrocarbon?

3

Page 23: Ontology-Based Classification of Molecules: a Logic Programming Approach

EXPRESSIVITY LIMITATIONS OF OWL

1 At least one tree-shaped model for each consistent OWLontology problematic representation of cycles

2 No minimality condition on the models hard to axiomatiseclasses based on the absence of attributes

EXAMPLE

Cyclobutane v ∃(= 4)hasAtom.(Carbon u ∃(= 2)hasBond.Carbon)

C C

CC

Oxygen

OWL-based reasoning support1 Is cyclobutane a cyclic molecule? 8

2 Is cyclobutane a hydrocarbon?

Required reasoning support

1 Is cyclobutane a cyclic molecule?2 Is cyclobutane a hydrocarbon?

3

Page 24: Ontology-Based Classification of Molecules: a Logic Programming Approach

EXPRESSIVITY LIMITATIONS OF OWL

1 At least one tree-shaped model for each consistent OWLontology problematic representation of cycles

2 No minimality condition on the models hard to axiomatiseclasses based on the absence of attributes

EXAMPLE

Cyclobutane v ∃(= 4)hasAtom.(Carbon u ∃(= 2)hasBond.Carbon)

C C

CC

Oxygen

OWL-based reasoning support1 Is cyclobutane a cyclic molecule? 8

2 Is cyclobutane a hydrocarbon?

Required reasoning support

1 Is cyclobutane a cyclic molecule?2 Is cyclobutane a hydrocarbon?

3

Page 25: Ontology-Based Classification of Molecules: a Logic Programming Approach

EXPRESSIVITY LIMITATIONS OF OWL

1 At least one tree-shaped model for each consistent OWLontology problematic representation of cycles

2 No minimality condition on the models hard to axiomatiseclasses based on the absence of attributes

EXAMPLE

Cyclobutane v ∃(= 4)hasAtom.(Carbon u ∃(= 2)hasBond.Carbon)

C C

CC

Oxygen

OWL-based reasoning support1 Is cyclobutane a cyclic molecule? 8

2 Is cyclobutane a hydrocarbon?

Required reasoning support

1 Is cyclobutane a cyclic molecule?2 Is cyclobutane a hydrocarbon?

3

Page 26: Ontology-Based Classification of Molecules: a Logic Programming Approach

EXPRESSIVITY LIMITATIONS OF OWL

1 At least one tree-shaped model for each consistent OWLontology problematic representation of cycles

2 No minimality condition on the models hard to axiomatiseclasses based on the absence of attributes

EXAMPLE

Cyclobutane v ∃(= 4)hasAtom.(Carbon u ∃(= 2)hasBond.Carbon)

C C

CC

Oxygen

OWL-based reasoning support1 Is cyclobutane a cyclic molecule? 82 Is cyclobutane a hydrocarbon? 8

Required reasoning support

1 Is cyclobutane a cyclic molecule?2 Is cyclobutane a hydrocarbon?

3

Page 27: Ontology-Based Classification of Molecules: a Logic Programming Approach

EXPRESSIVITY LIMITATIONS OF OWL

1 At least one tree-shaped model for each consistent OWLontology problematic representation of cycles

2 No minimality condition on the models hard to axiomatiseclasses based on the absence of attributes

EXAMPLE

Cyclobutane v ∃(= 4)hasAtom.(Carbon u ∃(= 2)hasBond.Carbon)

C C

CC

Oxygen

OWL-based reasoning support

1 Is cyclobutane a cyclic molecule?2 Is cyclobutane a hydrocarbon?

Required reasoning support

1 Is cyclobutane a cyclic molecule?2 Is cyclobutane a hydrocarbon?

3

Page 28: Ontology-Based Classification of Molecules: a Logic Programming Approach

EXPRESSIVITY LIMITATIONS OF OWL

1 At least one tree-shaped model for each consistent OWLontology problematic representation of cycles

2 No minimality condition on the models hard to axiomatiseclasses based on the absence of attributes

EXAMPLE

Cyclobutane v ∃(= 4)hasAtom.(Carbon u ∃(= 2)hasBond.Carbon)

C C

CC

Oxygen

OWL-based reasoning support

1 Is cyclobutane a cyclic molecule?2 Is cyclobutane a hydrocarbon?

Required reasoning support1 Is cyclobutane a cyclic molecule?2 Is cyclobutane a hydrocarbon?

3

Page 29: Ontology-Based Classification of Molecules: a Logic Programming Approach

EXPRESSIVITY LIMITATIONS OF OWL

1 At least one tree-shaped model for each consistent OWLontology problematic representation of cycles

2 No minimality condition on the models hard to axiomatiseclasses based on the absence of attributes

EXAMPLE

Cyclobutane v ∃(= 4)hasAtom.(Carbon u ∃(= 2)hasBond.Carbon)

C C

CC

Oxygen

OWL-based reasoning support

1 Is cyclobutane a cyclic molecule?2 Is cyclobutane a hydrocarbon?

Required reasoning support1 Is cyclobutane a cyclic molecule? 32 Is cyclobutane a hydrocarbon? 3

3

Page 30: Ontology-Based Classification of Molecules: a Logic Programming Approach

RESULTS OVERVIEW

1 Expressive and decidable formalism for modelling complexobjects: Description Graphs Logic Programs

2 Modelling that spans a wide range of structure-dependentclasses of molecules

3 Implementation that draws upon DLV and performsstructure-based classification with a significant speedup

4 Evaluation over part of the manually curated ChEBIontology revealed modelling errors

Language for representing biochemical structures with afavourable performance/expressivity trade-off

4

Page 31: Ontology-Based Classification of Molecules: a Logic Programming Approach

RESULTS OVERVIEW

1 Expressive and decidable formalism for modelling complexobjects: Description Graphs Logic Programs

2 Modelling that spans a wide range of structure-dependentclasses of molecules

3 Implementation that draws upon DLV and performsstructure-based classification with a significant speedup

4 Evaluation over part of the manually curated ChEBIontology revealed modelling errors

Language for representing biochemical structures with afavourable performance/expressivity trade-off

4

Page 32: Ontology-Based Classification of Molecules: a Logic Programming Approach

RESULTS OVERVIEW

1 Expressive and decidable formalism for modelling complexobjects: Description Graphs Logic Programs

2 Modelling that spans a wide range of structure-dependentclasses of molecules

3 Implementation that draws upon DLV and performsstructure-based classification with a significant speedup

4 Evaluation over part of the manually curated ChEBIontology revealed modelling errors

Language for representing biochemical structures with afavourable performance/expressivity trade-off

4

Page 33: Ontology-Based Classification of Molecules: a Logic Programming Approach

RESULTS OVERVIEW

1 Expressive and decidable formalism for modelling complexobjects: Description Graphs Logic Programs

2 Modelling that spans a wide range of structure-dependentclasses of molecules

3 Implementation that draws upon DLV and performsstructure-based classification with a significant speedup

4 Evaluation over part of the manually curated ChEBIontology revealed modelling errors

Language for representing biochemical structures with afavourable performance/expressivity trade-off

4

Page 34: Ontology-Based Classification of Molecules: a Logic Programming Approach

RESULTS OVERVIEW

1 Expressive and decidable formalism for modelling complexobjects: Description Graphs Logic Programs

2 Modelling that spans a wide range of structure-dependentclasses of molecules

3 Implementation that draws upon DLV and performsstructure-based classification with a significant speedup

4 Evaluation over part of the manually curated ChEBIontology revealed modelling errors

Language for representing biochemical structures with afavourable performance/expressivity trade-off

4

Page 35: Ontology-Based Classification of Molecules: a Logic Programming Approach

CLASSIFYING STRUCTURED OBJECTS

hasAtomsingledouble

0ascorbicAcid :

1

o

4 o 3 o

7

c2

o

8

c9

c

5

o

12

c 11

c6

o

10

c

13

h

Input fact: ascorbicAcid(a)Stable model: ascorbicAcid(a), hasAtom(a,af

i) for 1 ≤ i ≤ 13,o(af

i) for 1 ≤ i ≤ 6, c(afi) for 7 ≤ i ≤ 12, h(af

13), single(af8,a

f3),

single(af9,a

f4), single(af

12,afi) for i ∈ {5, 11}, single(af

11,af6),

single(af10,a

fi) for i ∈ {1, 9, 11, 13}, single(af

7,afi) for i ∈ {1, 8},

double(af2,a

f7), double(af

8,af9), horc(af

i) for 7 ≤ i ≤ 13,polyatomicEntity(a), carboxylicEster(a), cyclic(a)

Ascorbic acid is a cyclic polyatomic entity and a carboxylic ester

5

Page 36: Ontology-Based Classification of Molecules: a Logic Programming Approach

CLASSIFYING STRUCTURED OBJECTS

hasAtomsingledouble

0ascorbicAcid :

1

o

4 o 3 o

7

c2

o

8

c9

c

5

o

12

c 11

c6

o

10

c

13

h

Input fact: ascorbicAcid(a)Stable model: ascorbicAcid(a), hasAtom(a,af

i) for 1 ≤ i ≤ 13,o(af

i) for 1 ≤ i ≤ 6, c(afi) for 7 ≤ i ≤ 12, h(af

13), single(af8,a

f3),

single(af9,a

f4), single(af

12,afi) for i ∈ {5, 11}, single(af

11,af6),

single(af10,a

fi) for i ∈ {1, 9, 11, 13}, single(af

7,afi) for i ∈ {1, 8},

double(af2,a

f7), double(af

8,af9), horc(af

i) for 7 ≤ i ≤ 13,polyatomicEntity(a), carboxylicEster(a), cyclic(a)

Ascorbic acid is a cyclic polyatomic entity and a carboxylic ester

5

Page 37: Ontology-Based Classification of Molecules: a Logic Programming Approach

CLASSIFYING STRUCTURED OBJECTS

hasAtomsingledouble

0ascorbicAcid :

1

o

4 o 3 o

7

c2

o

8

c9

c

5

o

12

c 11

c6

o

10

c

13

h

ascorbicAcid(x)→hasAtom(x, f1(x)) ∧ . . . ∧ hasAtom(x, f13(x))o(f1(x)) ∧ . . . ∧ c(f7(x)) ∧ . . .∧single(f1(x), f7(x)) ∧ double(f7(x), f2(x)) ∧ . . .

Input fact: ascorbicAcid(a)Stable model: ascorbicAcid(a), hasAtom(a,af

i) for 1 ≤ i ≤ 13,o(af

i) for 1 ≤ i ≤ 6, c(afi) for 7 ≤ i ≤ 12, h(af

13), single(af8,a

f3),

single(af9,a

f4), single(af

12,afi) for i ∈ {5, 11}, single(af

11,af6),

single(af10,a

fi) for i ∈ {1, 9, 11, 13}, single(af

7,afi) for i ∈ {1, 8},

double(af2,a

f7), double(af

8,af9), horc(af

i) for 7 ≤ i ≤ 13,polyatomicEntity(a), carboxylicEster(a), cyclic(a)

Ascorbic acid is a cyclic polyatomic entity and a carboxylic ester

5

Page 38: Ontology-Based Classification of Molecules: a Logic Programming Approach

CLASSIFYING STRUCTURED OBJECTS

hasAtomsingledouble

0ascorbicAcid :

1

o

4 o 3 o

7

c2

o

8

c9

c

5

o

12

c 11

c6

o

10

c

13

h

ascorbicAcid(x)→hasAtom(x, f1(x)) ∧ . . . ∧ hasAtom(x, f13(x))o(f1(x)) ∧ . . . ∧ c(f7(x)) ∧ . . .∧single(f1(x), f7(x)) ∧ double(f7(x), f2(x)) ∧ . . .

hasAtom(x, y1) ∧ hasAtom(x, y2) ∧ y1 6= y2 → polyatomicEntity(x)

∧5i=1hasAtom(x, yi) ∧ c(y1) ∧ o(y2) ∧ o(y3)∧

c(y4) ∧ horc(y5) ∧ double(y1, y2)∧single(y1, y3) ∧ single(y3, y4) ∧ single(y1, y5)→ carboxylicEster(x)

Input fact: ascorbicAcid(a)Stable model: ascorbicAcid(a), hasAtom(a,af

i) for 1 ≤ i ≤ 13,o(af

i) for 1 ≤ i ≤ 6, c(afi) for 7 ≤ i ≤ 12, h(af

13), single(af8,a

f3),

single(af9,a

f4), single(af

12,afi) for i ∈ {5, 11}, single(af

11,af6),

single(af10,a

fi) for i ∈ {1, 9, 11, 13}, single(af

7,afi) for i ∈ {1, 8},

double(af2,a

f7), double(af

8,af9), horc(af

i) for 7 ≤ i ≤ 13,polyatomicEntity(a), carboxylicEster(a), cyclic(a)

Ascorbic acid is a cyclic polyatomic entity and a carboxylic ester

5

Page 39: Ontology-Based Classification of Molecules: a Logic Programming Approach

CLASSIFYING STRUCTURED OBJECTS

hasAtomsingledouble

0ascorbicAcid :

1

o

4 o 3 o

7

c2

o

8

c9

c

5

o

12

c 11

c6

o

10

c

13

h

Input fact: ascorbicAcid(a)Stable model: ascorbicAcid(a), hasAtom(a,af

i) for 1 ≤ i ≤ 13,o(af

i) for 1 ≤ i ≤ 6, c(afi) for 7 ≤ i ≤ 12, h(af

13), single(af8,a

f3),

single(af9,a

f4), single(af

12,afi) for i ∈ {5, 11}, single(af

11,af6),

single(af10,a

fi) for i ∈ {1, 9, 11, 13}, single(af

7,afi) for i ∈ {1, 8},

double(af2,a

f7), double(af

8,af9), horc(af

i) for 7 ≤ i ≤ 13,polyatomicEntity(a), carboxylicEster(a), cyclic(a)

Ascorbic acid is a cyclic polyatomic entity and a carboxylic ester

5

Page 40: Ontology-Based Classification of Molecules: a Logic Programming Approach

CLASSIFYING STRUCTURED OBJECTS

hasAtomsingledouble

0ascorbicAcid :

1

o

4 o 3 o

7

c2

o

8

c9

c

5

o

12

c 11

c6

o

10

c

13

h

Input fact: ascorbicAcid(a)Stable model: ascorbicAcid(a), hasAtom(a,af

i) for 1 ≤ i ≤ 13,o(af

i) for 1 ≤ i ≤ 6, c(afi) for 7 ≤ i ≤ 12, h(af

13), single(af8,a

f3),

single(af9,a

f4), single(af

12,afi) for i ∈ {5, 11}, single(af

11,af6),

single(af10,a

fi) for i ∈ {1, 9, 11, 13}, single(af

7,afi) for i ∈ {1, 8},

double(af2,a

f7), double(af

8,af9), horc(af

i) for 7 ≤ i ≤ 13,polyatomicEntity(a), carboxylicEster(a), cyclic(a)

Ascorbic acid is a cyclic polyatomic entity and a carboxylic ester

5

Page 41: Ontology-Based Classification of Molecules: a Logic Programming Approach

CHEMICAL CLASSES WE COVERED

1 Existence of subcomponents

Carbon moleculesCarboxylic acids and carboxylic estersKetones and aldehydes

2 Exact cardinality of partsExactly two carbonsDicarboxylic acid

3 Exclusive compositionInorganic moleculesHydrocarbonsSaturated molecules

4 Cyclicity-related classesBenzenesCyclic moleculesAlkanes

6

Page 42: Ontology-Based Classification of Molecules: a Logic Programming Approach

CHEMICAL CLASSES WE COVERED

1 Existence of subcomponentsCarbon molecules

Carboxylic acids and carboxylic estersKetones and aldehydes

2 Exact cardinality of partsExactly two carbonsDicarboxylic acid

3 Exclusive compositionInorganic moleculesHydrocarbonsSaturated molecules

4 Cyclicity-related classesBenzenesCyclic moleculesAlkanes

6

Page 43: Ontology-Based Classification of Molecules: a Logic Programming Approach

CHEMICAL CLASSES WE COVERED

1 Existence of subcomponentsCarbon moleculesCarboxylic acids and carboxylic esters

Ketones and aldehydes

2 Exact cardinality of partsExactly two carbonsDicarboxylic acid

3 Exclusive compositionInorganic moleculesHydrocarbonsSaturated molecules

4 Cyclicity-related classesBenzenesCyclic moleculesAlkanes

6

Page 44: Ontology-Based Classification of Molecules: a Logic Programming Approach

CHEMICAL CLASSES WE COVERED

1 Existence of subcomponentsCarbon moleculesCarboxylic acids and carboxylic estersKetones and aldehydes

2 Exact cardinality of partsExactly two carbonsDicarboxylic acid

3 Exclusive compositionInorganic moleculesHydrocarbonsSaturated molecules

4 Cyclicity-related classesBenzenesCyclic moleculesAlkanes

6

Page 45: Ontology-Based Classification of Molecules: a Logic Programming Approach

CHEMICAL CLASSES WE COVERED

1 Existence of subcomponentsCarbon moleculesCarboxylic acids and carboxylic estersKetones and aldehydes

2 Exact cardinality of parts

Exactly two carbonsDicarboxylic acid

3 Exclusive compositionInorganic moleculesHydrocarbonsSaturated molecules

4 Cyclicity-related classesBenzenesCyclic moleculesAlkanes

6

Page 46: Ontology-Based Classification of Molecules: a Logic Programming Approach

CHEMICAL CLASSES WE COVERED

1 Existence of subcomponentsCarbon moleculesCarboxylic acids and carboxylic estersKetones and aldehydes

2 Exact cardinality of partsExactly two carbons

Dicarboxylic acid

3 Exclusive compositionInorganic moleculesHydrocarbonsSaturated molecules

4 Cyclicity-related classesBenzenesCyclic moleculesAlkanes

6

Page 47: Ontology-Based Classification of Molecules: a Logic Programming Approach

CHEMICAL CLASSES WE COVERED

1 Existence of subcomponentsCarbon moleculesCarboxylic acids and carboxylic estersKetones and aldehydes

2 Exact cardinality of partsExactly two carbonsDicarboxylic acid

3 Exclusive compositionInorganic moleculesHydrocarbonsSaturated molecules

4 Cyclicity-related classesBenzenesCyclic moleculesAlkanes

6

Page 48: Ontology-Based Classification of Molecules: a Logic Programming Approach

CHEMICAL CLASSES WE COVERED

1 Existence of subcomponentsCarbon moleculesCarboxylic acids and carboxylic estersKetones and aldehydes

2 Exact cardinality of partsExactly two carbonsDicarboxylic acid

3 Exclusive composition

Inorganic moleculesHydrocarbonsSaturated molecules

4 Cyclicity-related classesBenzenesCyclic moleculesAlkanes

6

Page 49: Ontology-Based Classification of Molecules: a Logic Programming Approach

CHEMICAL CLASSES WE COVERED

1 Existence of subcomponentsCarbon moleculesCarboxylic acids and carboxylic estersKetones and aldehydes

2 Exact cardinality of partsExactly two carbonsDicarboxylic acid

3 Exclusive compositionInorganic molecules

HydrocarbonsSaturated molecules

4 Cyclicity-related classesBenzenesCyclic moleculesAlkanes

6

Page 50: Ontology-Based Classification of Molecules: a Logic Programming Approach

CHEMICAL CLASSES WE COVERED

1 Existence of subcomponentsCarbon moleculesCarboxylic acids and carboxylic estersKetones and aldehydes

2 Exact cardinality of partsExactly two carbonsDicarboxylic acid

3 Exclusive compositionInorganic moleculesHydrocarbons

Saturated molecules

4 Cyclicity-related classesBenzenesCyclic moleculesAlkanes

6

Page 51: Ontology-Based Classification of Molecules: a Logic Programming Approach

CHEMICAL CLASSES WE COVERED

1 Existence of subcomponentsCarbon moleculesCarboxylic acids and carboxylic estersKetones and aldehydes

2 Exact cardinality of partsExactly two carbonsDicarboxylic acid

3 Exclusive compositionInorganic moleculesHydrocarbonsSaturated molecules

4 Cyclicity-related classesBenzenesCyclic moleculesAlkanes

6

Page 52: Ontology-Based Classification of Molecules: a Logic Programming Approach

CHEMICAL CLASSES WE COVERED

1 Existence of subcomponentsCarbon moleculesCarboxylic acids and carboxylic estersKetones and aldehydes

2 Exact cardinality of partsExactly two carbonsDicarboxylic acid

3 Exclusive compositionInorganic moleculesHydrocarbonsSaturated molecules

4 Cyclicity-related classes

BenzenesCyclic moleculesAlkanes

6

Page 53: Ontology-Based Classification of Molecules: a Logic Programming Approach

CHEMICAL CLASSES WE COVERED

1 Existence of subcomponentsCarbon moleculesCarboxylic acids and carboxylic estersKetones and aldehydes

2 Exact cardinality of partsExactly two carbonsDicarboxylic acid

3 Exclusive compositionInorganic moleculesHydrocarbonsSaturated molecules

4 Cyclicity-related classesBenzenes

Cyclic moleculesAlkanes

6

Page 54: Ontology-Based Classification of Molecules: a Logic Programming Approach

CHEMICAL CLASSES WE COVERED

1 Existence of subcomponentsCarbon moleculesCarboxylic acids and carboxylic estersKetones and aldehydes

2 Exact cardinality of partsExactly two carbonsDicarboxylic acid

3 Exclusive compositionInorganic moleculesHydrocarbonsSaturated molecules

4 Cyclicity-related classesBenzenesCyclic molecules

Alkanes

6

Page 55: Ontology-Based Classification of Molecules: a Logic Programming Approach

CHEMICAL CLASSES WE COVERED

1 Existence of subcomponentsCarbon moleculesCarboxylic acids and carboxylic estersKetones and aldehydes

2 Exact cardinality of partsExactly two carbonsDicarboxylic acid

3 Exclusive compositionInorganic moleculesHydrocarbonsSaturated molecules

4 Cyclicity-related classesBenzenesCyclic moleculesAlkanes

6

Page 56: Ontology-Based Classification of Molecules: a Logic Programming Approach

EMPIRICAL EVALUATION

Draws upon DLV, a deductive databases engine

Evaluation with data extracted from ChEBI500 molecules under 51 chemical classes in 40 secsQuicker than other approaches:

[Hastings et al., 2010] 140 molecules in 4 hours[Magka et al., 2012] 70 molecules in 450 secs

Subsumptions exposed by our prototype:

ascorbic acid is a polyatomic entity, a carboxylic ester and acyclic moleculemissing from the ChEBI OWL ontology

Contradictory subclass relation from ChEBI:

Ascorbic acid is asserted to be a carboxylic acid (release 95)Not listed among the subsumptions derived by our prototype

7

Page 57: Ontology-Based Classification of Molecules: a Logic Programming Approach

EMPIRICAL EVALUATION

Draws upon DLV, a deductive databases engineEvaluation with data extracted from ChEBI

500 molecules under 51 chemical classes in 40 secsQuicker than other approaches:

[Hastings et al., 2010] 140 molecules in 4 hours[Magka et al., 2012] 70 molecules in 450 secs

Subsumptions exposed by our prototype:

ascorbic acid is a polyatomic entity, a carboxylic ester and acyclic moleculemissing from the ChEBI OWL ontology

Contradictory subclass relation from ChEBI:

Ascorbic acid is asserted to be a carboxylic acid (release 95)Not listed among the subsumptions derived by our prototype

7

Page 58: Ontology-Based Classification of Molecules: a Logic Programming Approach

EMPIRICAL EVALUATION

Draws upon DLV, a deductive databases engineEvaluation with data extracted from ChEBI500 molecules under 51 chemical classes in 40 secs

Quicker than other approaches:

[Hastings et al., 2010] 140 molecules in 4 hours[Magka et al., 2012] 70 molecules in 450 secs

Subsumptions exposed by our prototype:

ascorbic acid is a polyatomic entity, a carboxylic ester and acyclic moleculemissing from the ChEBI OWL ontology

Contradictory subclass relation from ChEBI:

Ascorbic acid is asserted to be a carboxylic acid (release 95)Not listed among the subsumptions derived by our prototype

7

Page 59: Ontology-Based Classification of Molecules: a Logic Programming Approach

EMPIRICAL EVALUATION

Draws upon DLV, a deductive databases engineEvaluation with data extracted from ChEBI500 molecules under 51 chemical classes in 40 secsQuicker than other approaches:

[Hastings et al., 2010] 140 molecules in 4 hours[Magka et al., 2012] 70 molecules in 450 secs

Subsumptions exposed by our prototype:

ascorbic acid is a polyatomic entity, a carboxylic ester and acyclic moleculemissing from the ChEBI OWL ontology

Contradictory subclass relation from ChEBI:

Ascorbic acid is asserted to be a carboxylic acid (release 95)Not listed among the subsumptions derived by our prototype

7

Page 60: Ontology-Based Classification of Molecules: a Logic Programming Approach

EMPIRICAL EVALUATION

Draws upon DLV, a deductive databases engineEvaluation with data extracted from ChEBI500 molecules under 51 chemical classes in 40 secsQuicker than other approaches:

[Hastings et al., 2010] 140 molecules in 4 hours[Magka et al., 2012] 70 molecules in 450 secs

Subsumptions exposed by our prototype:

ascorbic acid is a polyatomic entity, a carboxylic ester and acyclic moleculemissing from the ChEBI OWL ontology

Contradictory subclass relation from ChEBI:

Ascorbic acid is asserted to be a carboxylic acid (release 95)Not listed among the subsumptions derived by our prototype

7

Page 61: Ontology-Based Classification of Molecules: a Logic Programming Approach

EMPIRICAL EVALUATION

Draws upon DLV, a deductive databases engineEvaluation with data extracted from ChEBI500 molecules under 51 chemical classes in 40 secsQuicker than other approaches:

[Hastings et al., 2010] 140 molecules in 4 hours[Magka et al., 2012] 70 molecules in 450 secs

Subsumptions exposed by our prototype:

ascorbic acid is a polyatomic entity, a carboxylic ester and acyclic moleculemissing from the ChEBI OWL ontology

Contradictory subclass relation from ChEBI:

Ascorbic acid is asserted to be a carboxylic acid (release 95)Not listed among the subsumptions derived by our prototype

7

Page 62: Ontology-Based Classification of Molecules: a Logic Programming Approach

EMPIRICAL EVALUATION

Draws upon DLV, a deductive databases engineEvaluation with data extracted from ChEBI500 molecules under 51 chemical classes in 40 secsQuicker than other approaches:

[Hastings et al., 2010] 140 molecules in 4 hours[Magka et al., 2012] 70 molecules in 450 secs

Subsumptions exposed by our prototype:ascorbic acid is a polyatomic entity, a carboxylic ester and acyclic moleculemissing from the ChEBI OWL ontology

Contradictory subclass relation from ChEBI:

Ascorbic acid is asserted to be a carboxylic acid (release 95)Not listed among the subsumptions derived by our prototype

7

Page 63: Ontology-Based Classification of Molecules: a Logic Programming Approach

EMPIRICAL EVALUATION

Draws upon DLV, a deductive databases engineEvaluation with data extracted from ChEBI500 molecules under 51 chemical classes in 40 secsQuicker than other approaches:

[Hastings et al., 2010] 140 molecules in 4 hours[Magka et al., 2012] 70 molecules in 450 secs

Subsumptions exposed by our prototype:ascorbic acid is a polyatomic entity, a carboxylic ester and acyclic moleculemissing from the ChEBI OWL ontology

Contradictory subclass relation from ChEBI:

Ascorbic acid is asserted to be a carboxylic acid (release 95)Not listed among the subsumptions derived by our prototype

7

Page 64: Ontology-Based Classification of Molecules: a Logic Programming Approach

EMPIRICAL EVALUATION

Draws upon DLV, a deductive databases engineEvaluation with data extracted from ChEBI500 molecules under 51 chemical classes in 40 secsQuicker than other approaches:

[Hastings et al., 2010] 140 molecules in 4 hours[Magka et al., 2012] 70 molecules in 450 secs

Subsumptions exposed by our prototype:ascorbic acid is a polyatomic entity, a carboxylic ester and acyclic moleculemissing from the ChEBI OWL ontology

Contradictory subclass relation from ChEBI:Ascorbic acid is asserted to be a carboxylic acid (release 95)Not listed among the subsumptions derived by our prototype

7

Page 65: Ontology-Based Classification of Molecules: a Logic Programming Approach

CONCLUSION AND FURTHER RESEARCH

Results1 Expressive and decidable formalism for complex objects

2 Wide range of structure-based classes3 DLV-based implementation exhibits a significant speedup4 Evaluation over ChEBI ontology revealed modelling errors

Language for representing biochemical structures with afavourable performance/expressivity trade-off

Future directions

SMILES-based surface syntaxDetect subsumptions between classesExtensions with numerical datatypesClassification of complex biological objectsIntegration with Protégé, Bioclipse, JChemPaint,. . .Mapping from our logic to RDF

Thank you! Questions?!?

8

Page 66: Ontology-Based Classification of Molecules: a Logic Programming Approach

CONCLUSION AND FURTHER RESEARCH

Results1 Expressive and decidable formalism for complex objects2 Wide range of structure-based classes

3 DLV-based implementation exhibits a significant speedup4 Evaluation over ChEBI ontology revealed modelling errors

Language for representing biochemical structures with afavourable performance/expressivity trade-off

Future directions

SMILES-based surface syntaxDetect subsumptions between classesExtensions with numerical datatypesClassification of complex biological objectsIntegration with Protégé, Bioclipse, JChemPaint,. . .Mapping from our logic to RDF

Thank you! Questions?!?

8

Page 67: Ontology-Based Classification of Molecules: a Logic Programming Approach

CONCLUSION AND FURTHER RESEARCH

Results1 Expressive and decidable formalism for complex objects2 Wide range of structure-based classes3 DLV-based implementation exhibits a significant speedup

4 Evaluation over ChEBI ontology revealed modelling errors

Language for representing biochemical structures with afavourable performance/expressivity trade-off

Future directions

SMILES-based surface syntaxDetect subsumptions between classesExtensions with numerical datatypesClassification of complex biological objectsIntegration with Protégé, Bioclipse, JChemPaint,. . .Mapping from our logic to RDF

Thank you! Questions?!?

8

Page 68: Ontology-Based Classification of Molecules: a Logic Programming Approach

CONCLUSION AND FURTHER RESEARCH

Results1 Expressive and decidable formalism for complex objects2 Wide range of structure-based classes3 DLV-based implementation exhibits a significant speedup4 Evaluation over ChEBI ontology revealed modelling errors

Language for representing biochemical structures with afavourable performance/expressivity trade-off

Future directions

SMILES-based surface syntaxDetect subsumptions between classesExtensions with numerical datatypesClassification of complex biological objectsIntegration with Protégé, Bioclipse, JChemPaint,. . .Mapping from our logic to RDF

Thank you! Questions?!?

8

Page 69: Ontology-Based Classification of Molecules: a Logic Programming Approach

CONCLUSION AND FURTHER RESEARCH

Results1 Expressive and decidable formalism for complex objects2 Wide range of structure-based classes3 DLV-based implementation exhibits a significant speedup4 Evaluation over ChEBI ontology revealed modelling errors

Language for representing biochemical structures with afavourable performance/expressivity trade-off

Future directions

SMILES-based surface syntaxDetect subsumptions between classesExtensions with numerical datatypesClassification of complex biological objectsIntegration with Protégé, Bioclipse, JChemPaint,. . .Mapping from our logic to RDF

Thank you! Questions?!?

8

Page 70: Ontology-Based Classification of Molecules: a Logic Programming Approach

CONCLUSION AND FURTHER RESEARCH

Results1 Expressive and decidable formalism for complex objects2 Wide range of structure-based classes3 DLV-based implementation exhibits a significant speedup4 Evaluation over ChEBI ontology revealed modelling errors

Language for representing biochemical structures with afavourable performance/expressivity trade-off

Future directionsSMILES-based surface syntax

Detect subsumptions between classesExtensions with numerical datatypesClassification of complex biological objectsIntegration with Protégé, Bioclipse, JChemPaint,. . .Mapping from our logic to RDF

Thank you! Questions?!?

8

Page 71: Ontology-Based Classification of Molecules: a Logic Programming Approach

CONCLUSION AND FURTHER RESEARCH

Results1 Expressive and decidable formalism for complex objects2 Wide range of structure-based classes3 DLV-based implementation exhibits a significant speedup4 Evaluation over ChEBI ontology revealed modelling errors

Language for representing biochemical structures with afavourable performance/expressivity trade-off

Future directionsSMILES-based surface syntax

∧5i=1hasAtom(x, yi) ∧ c(y1) ∧ o(y2) ∧ o(y3) ∧ c(y4)∧

double(y1, y2) ∧ single(y1, y3) ∧ single(y3, y4) ∧ single(y1, y5)→ carboxylicEster(x)

Detect subsumptions between classesExtensions with numerical datatypesClassification of complex biological objectsIntegration with Protégé, Bioclipse, JChemPaint,. . .Mapping from our logic to RDF

Thank you! Questions?!?

8

Page 72: Ontology-Based Classification of Molecules: a Logic Programming Approach

CONCLUSION AND FURTHER RESEARCH

Results1 Expressive and decidable formalism for complex objects2 Wide range of structure-based classes3 DLV-based implementation exhibits a significant speedup4 Evaluation over ChEBI ontology revealed modelling errors

Language for representing biochemical structures with afavourable performance/expressivity trade-off

Future directionsSMILES-based surface syntax

define carboxylicEstersome hasAtom SMILES(COC(= O)[∗])end.

Detect subsumptions between classesExtensions with numerical datatypesClassification of complex biological objectsIntegration with Protégé, Bioclipse, JChemPaint,. . .Mapping from our logic to RDF

Thank you! Questions?!?

8

Page 73: Ontology-Based Classification of Molecules: a Logic Programming Approach

CONCLUSION AND FURTHER RESEARCH

Results1 Expressive and decidable formalism for complex objects2 Wide range of structure-based classes3 DLV-based implementation exhibits a significant speedup4 Evaluation over ChEBI ontology revealed modelling errors

Language for representing biochemical structures with afavourable performance/expressivity trade-off

Future directionsSMILES-based surface syntaxDetect subsumptions between classes

Extensions with numerical datatypesClassification of complex biological objectsIntegration with Protégé, Bioclipse, JChemPaint,. . .Mapping from our logic to RDF

Thank you! Questions?!?

8

Page 74: Ontology-Based Classification of Molecules: a Logic Programming Approach

CONCLUSION AND FURTHER RESEARCH

Results1 Expressive and decidable formalism for complex objects2 Wide range of structure-based classes3 DLV-based implementation exhibits a significant speedup4 Evaluation over ChEBI ontology revealed modelling errors

Language for representing biochemical structures with afavourable performance/expressivity trade-off

Future directionsSMILES-based surface syntaxDetect subsumptions between classesE.g., Carboxylic ester is an organic molecular entity

Extensions with numerical datatypesClassification of complex biological objectsIntegration with Protégé, Bioclipse, JChemPaint,. . .Mapping from our logic to RDF

Thank you! Questions?!?

8

Page 75: Ontology-Based Classification of Molecules: a Logic Programming Approach

CONCLUSION AND FURTHER RESEARCH

Results1 Expressive and decidable formalism for complex objects2 Wide range of structure-based classes3 DLV-based implementation exhibits a significant speedup4 Evaluation over ChEBI ontology revealed modelling errors

Language for representing biochemical structures with afavourable performance/expressivity trade-off

Future directionsSMILES-based surface syntaxDetect subsumptions between classesExtensions with numerical datatypes

Classification of complex biological objectsIntegration with Protégé, Bioclipse, JChemPaint,. . .Mapping from our logic to RDF

Thank you! Questions?!?

8

Page 76: Ontology-Based Classification of Molecules: a Logic Programming Approach

CONCLUSION AND FURTHER RESEARCH

Results1 Expressive and decidable formalism for complex objects2 Wide range of structure-based classes3 DLV-based implementation exhibits a significant speedup4 Evaluation over ChEBI ontology revealed modelling errors

Language for representing biochemical structures with afavourable performance/expressivity trade-off

Future directionsSMILES-based surface syntaxDetect subsumptions between classesExtensions with numerical datatypesE.g., Small molecules if they weigh less than 800 daltons

Classification of complex biological objectsIntegration with Protégé, Bioclipse, JChemPaint,. . .Mapping from our logic to RDF

Thank you! Questions?!?

8

Page 77: Ontology-Based Classification of Molecules: a Logic Programming Approach

CONCLUSION AND FURTHER RESEARCH

Results1 Expressive and decidable formalism for complex objects2 Wide range of structure-based classes3 DLV-based implementation exhibits a significant speedup4 Evaluation over ChEBI ontology revealed modelling errors

Language for representing biochemical structures with afavourable performance/expressivity trade-off

Future directionsSMILES-based surface syntaxDetect subsumptions between classesExtensions with numerical datatypesClassification of complex biological objects

Integration with Protégé, Bioclipse, JChemPaint,. . .Mapping from our logic to RDF

Thank you! Questions?!?

8

Page 78: Ontology-Based Classification of Molecules: a Logic Programming Approach

CONCLUSION AND FURTHER RESEARCH

Results1 Expressive and decidable formalism for complex objects2 Wide range of structure-based classes3 DLV-based implementation exhibits a significant speedup4 Evaluation over ChEBI ontology revealed modelling errors

Language for representing biochemical structures with afavourable performance/expressivity trade-off

Future directionsSMILES-based surface syntaxDetect subsumptions between classesExtensions with numerical datatypesClassification of complex biological objectsIntegration with Protégé, Bioclipse, JChemPaint,. . .

Mapping from our logic to RDF

Thank you! Questions?!?

8

Page 79: Ontology-Based Classification of Molecules: a Logic Programming Approach

CONCLUSION AND FURTHER RESEARCH

Results1 Expressive and decidable formalism for complex objects2 Wide range of structure-based classes3 DLV-based implementation exhibits a significant speedup4 Evaluation over ChEBI ontology revealed modelling errors

Language for representing biochemical structures with afavourable performance/expressivity trade-off

Future directionsSMILES-based surface syntaxDetect subsumptions between classesExtensions with numerical datatypesClassification of complex biological objectsIntegration with Protégé, Bioclipse, JChemPaint,. . .Mapping from our logic to RDF

Thank you! Questions?!?

8

Page 80: Ontology-Based Classification of Molecules: a Logic Programming Approach

CONCLUSION AND FURTHER RESEARCH

Results1 Expressive and decidable formalism for complex objects2 Wide range of structure-based classes3 DLV-based implementation exhibits a significant speedup4 Evaluation over ChEBI ontology revealed modelling errors

Language for representing biochemical structures with afavourable performance/expressivity trade-off

Future directionsSMILES-based surface syntaxDetect subsumptions between classesExtensions with numerical datatypesClassification of complex biological objectsIntegration with Protégé, Bioclipse, JChemPaint,. . .Mapping from our logic to RDF

Thank you! Questions?!?

8