Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That
1. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
Bridging Domain Knowledge
and its Formalisation –
and Integrating Services on Top of That
Presentation at the University of Birmingham, UK
Christoph Lange
University of Bremen, Germany
2011-12-19
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 1
2. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
‘Hello, World!’
Ph.D. from Jacobs University Bremen (with
Michael Kohlhase)
Enabling Collaboration
on Semiformal Mathematical Knowledge
by Semantic Web Integration
Postdoctoral researcher at the University of
Bremen (with John Bateman, Till Mossakowski)
Ontology Integration and Interoperability
(OntoIOp) – Distributed Ontology Language
(DOL) ISO 17347
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 2
3. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
Why Formalise?
Take advantage of machine support for domain-relevant tasks
⇒ teach the computer about your domain
Machine support needed for
verifying assumptions
retrieving relevant information
automating processes (while avoiding low-level coding)
How to formalise? – Use logic!
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 3
4. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
Machine Support (1): Mathematics Publishing
The author(s): The reader(s): The reviewer(s):
0 original idea (in one’s ‘What does that 1 read paper (← )
mind) mean?’: missing 2 verify claims
background,
1 formalise into
used to different 3 point out problems
structured document
notation with the paper and
2 search existing its formal concepts
‘How does that
knowledge to build
work?’
on
‘What is that good
3 validate formal
for?’
structure
look up background
4 present in a
information in cited
comprehensible way
publications
5 submit for review
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 4
5. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
Logical Formalisation (1): Math. Publishing
dependsOn,
MathKnowledgeItem hasPart, subClassOf
verbalizes
Type
other
properties
Theory Statement
homeTheory
imports
From
e
imports,
NonConstitutive
p
hasTy
Import metaTheory
Statement
Notation
Constitutive Definition
Statement Proof
Example Assertion
proves
Symbol hasDefinition
Axiom exemplifies
Definition bol
Sym
ers
rend
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 5
6. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
Machine Support (2): Ambient Assisted Living
Scenario
Clara instructs her wheelchair to get her to the kitchen (next door
to the living room). For dinner, she would like to take a pizza from
the freezer and bake it in the oven. (Her diet is vegetarian.)
Afterwards she needs to rest in bed.
Devices Involved, Simple to Complex:
kitchen light switch
freezer (aware of its contents)
wheelchair (with navigation)
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 6
7. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
Logical Formalisation (2): AAL
Light Switch: propositional logic
‘light is switched on if and only if someone is in the room and it
is dark outside’ – light_on ≡ person_in_room ∧ dark_outside
Freezer: description logic (Pizza ontology)
‘a vegetarian pizza is a pizza whose toppings are all vegetarian’
VegetarianPizza ≡ Pizza ∀hasTopping.Vegetarian
Wheelchair: first order logic (RCC-style spatial calculus)
‘two areas in a house (e.g. a working area in a room) are either
the same, or intersecting, or bordering, or separated, or one is
part of the other’
∀a1 , a2 .equal(a1 , a2 ) ∨ overlapping(a1 , a2 ) ∨ bordering(a1 , a2 ) ∨
disconnected(a1 , a2 ) ∨ part_of(a1 , a2 ) ∨ part_of(a2 , a1 )
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 7
8. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
What is Wrong with Formalisation?
The machine understands it
Logic experts understand it
Domain experts don’t understand it
Recall well-known software engineering disasters
e.g. the 1998 Mars Polar Lander ($ 165 million)
Loss: then money, soon human lives?
ICD-11 being formalised into an ontology
Domain experts don’t need to fully understand a formalisation,
but they should be able to proof-read it!
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 8
9. Introduction function f is analytic on an open subset R ⊂ C if f is complex the Gap: Representation & Services
Definition: A Formalisation Bridging Conclusion & Outlook
differentiable everywhere on R; f is entire if it is analytic on all of C.
Semiformal Mathematical Knowledge
2 Proof of the Fundamental Theorem via Liouville
Theorem 2.1 (Liouville). If f (z) is analytic and bounded in the complex plane,
then f (z) is constant.
Informal
We now prove
Theorem 2.2 (Fundamental Theorem of Algebra). Let p(z) be a polynomial
Formalised = Computerised
with complex coefficients of degree n. Then p(z) has n roots.
Proof. It is sufficient to show any p(z) has one root, for by division we can then
write p(z) = (z − z0 )g(z), with g of lower degree.
Note that if
p(z) = an z n + an−1 z n−1 + · · · + a0 , (2)
then as |z| → ∞, |p(z)| → ∞. This follows as
an−1 a0
p(z) = z n · an + + ··· + n . (3)
z z
1
Assume p(z) is non-zero everywhere. Then p(z) is bounded when |z| ≥ R.
1 1
Also, p(z) = 0, so p(z) is bounded for |z| ≤ R by continuity. Thus, p(z) is
a bounded, entire function, which must be constant. Thus, p(z) is constant, a
contradiction which implies p(z) must have a zero (our assumption).
[Lev]
Semiformal – a pragmatic and practical compromise
2
anything informal that is intended to or could in principle be
formalised
combinations of informal and formal for both human and
machine audience
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 9
10. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
Services (1): Look up Background Knowledge
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 10
11. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
Services (1): Look up Background Knowledge
Authored in S EX, output to XHTML+MathML
T
begin{definition}[for=subSet]
...
end{definition}
...
subSet{R}{cartProd{A,B}}
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 10
12. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
Services (2): Adaptive Presentation
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 11
13. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
Services (2): Adaptive Presentation
Authored in LTEX, output to XHTML+MathML
A
usepackage{siunitx}
DeclareSIUnit foot { ft }
...
SI{9144}{feet}
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 11
14. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
Services (3): Ontology Documentation
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 12
15. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
Services (4): Localised Peer Review
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 13
16. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
Services (4): Localised Peer Review
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 13
17. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
Services (4): Localised Peer Review
hasDiscussion `
forum1 definition
(IkeWiki ontology)
exemplifies
post1: Issue
(UnclearWh.Useful) example
has_reply elaborates_on
post2: Elaboration
has_container agrees_with
resolvesInto
post3: Position
proposes_
solution_for knowledge
post4: Idea items
(ProvideExample) (OMDoc ontology)
supports on wiki pages
decides
post5: Evaluation
agrees_with
post6: Position
post7: Decision supported_by
argumentative
physical structure structure
(SIOC Core) discussion page (SIOC Arg.)
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 13
18. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
Services (4): Localised Peer Review
Theorem …… Example
hasDiscussion ` SIOC
forum1 definition
(IkeWiki ontology) argumentation
Position subClassOf
module (partly shown) agrees_with/
agrees_with/
exemplifies disagrees_with
post1: Issue disagrees_with
(UnclearWh.Useful) Domain-specific Math. Know-
example
has_reply elaborates_on
argumentation
supported_by ledge Item
classes (partly shown)
post2: Elaboration subClassOf
has_container agrees_with OMDoc ontology
Ontology
resolvesInto Decision
post3: Position Entity
proposes_
solution_for knowledge decides decides
post4: Idea items resolves_into
(ProvideExample) (OMDoc ontology)
supports on wiki pages
decides Issue Idea
post5: Evaluation proposes_solution_for
subClassOf subClassOf
agrees_with
post6: Position Wrong Inappropriate Incomprehensible Provide Keep as Delete
for Domain Example Bad Example
post7: Decision supported_by
argumentative
physical structure structure
(SIOC Core) discussion page (SIOC Arg.)
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 13
19. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
Services (5): Software Eng. Expert Finding
The V-Model introduces relations
between document fragments
Formalise V-Model vocabulary:
refines, implements, describesUse
Mark up these secondary
(non-logical) relations as metadata
S EX supports flexibly extensible metadata in RDFa style
T
specify their semantics in vocabularies; once more in S EX
T
Example (Refining a Specification)
SemVMrel[module=reqspec,refid=R12,rel=refines]
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 14
20. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
Services (5): Software Eng. Expert Finding (2)
# application-specific dimensions:
PREFIX ver: <http://www.sams-projekt.de/ontologies/VersionManagement#> # versioning
PREFIX sp: <http://www.sams-projekt.de/ontologies/V-model#> # software process
# prefixes for logical/functional structures (OMDoc), administrative metadata (DCMES),
# and user profiles (FOAF) omitted
SELECT ?potentialSubstituteName WHERE {
# for each document Alice is responsible for, get all of its parts,
# i.e., transitively, any kind of semantic (sub)object in the document
?document ver:responsible <.../employees#Alice> ;
oo:hasPart ?object .
# find other objects that are related to each ?object
# 1. in that ?object refines them w.r.t. the software process
{ ?object sp:refines ?relatedObject }
UNION
# 2. or in that they are other mathematical symbols defined in terms
# of ?object (only applies if ?object itself is a symbol)
{ ?object oo:occursInDefinitionOf ?relatedObject }
# find the document that contains the related object and the person responsible for that document ...
?otherDocument oo:hasPart ?relatedObject ;
dc:date ?date ;
sp:responsible ?potentialSubstitute .
# (only considering documents that are sufficiently up to date)
FILTER (?date > "2009-01-01"^^xsd:date)
# ... and the real name of that person
?potentialSubstitute foaf:name ?potentialSubstituteName .
}
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 15
21. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
The ‘Active Document’ Machinery
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 16
22. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
Connecting Mathematics↔Economics Data
How to deal with derived values in datasets?
Sussex St.
Reading Andrews NDL
Audio- Lists Resource subjects t4gm
MySpace scrobbler Lists
Moseley (DBTune) (DBTune) RAMEAU
Folk NTU SH lobid
GTAA Plymouth Resource
Lists
Organi-
Reading
Lists
sations
Music The Open ECS
Magna- Brainz Music
DB tune Library LCSH South-
(Data Brainz LIBRIS ampton
Tropes lobid Ulm
Incubator) (zitgist) Man- EPrints
Resources
chester
Surge Reading
biz. Music RISKS
Radio Lists The Open ECS
data. John Brainz
Discogs Library PSH Gem. UB South-
gov.uk Peel (DBTune)
FanHubz (Data In- (Talis) Norm- Mann- ampton
(DB cubator) Jamendo datei heim RESEX
Tune)
Popula- Poké- DEPLOY
Last.fm
tion (En- pédia
Artists Last.FM Linked RDF
AKTing) research EUTC (DBTune) (rdfize) LCCN VIAF Book Wiki
data.gov Produc- Pisa Eurécom
P20 Mashup semantic
NHS .uk tions classical web.org
(EnAKTing) Pokedex
(DB
Mortality Tune) PBAC ECS
(En-
AKTing)
BBC MARC (RKB Budapest
Program Codes Explorer)
Energy education OpenEI BBC List Semantic Lotico Revyu OAI
(En- CO2 data.gov mes Music Crunch SW
AKTing) (En- .uk Chronic- Linked Dog
NSZL Base
AKTing) ling Event- MDB RDF Food IRIT
America Media Catalog
ohloh
BBC DBLP ACM IBM
Good- BibBase
Ord- Wildlife (RKB
Openly Recht- win
nance Finder Explorer)
Local spraak. Family DBLP
legislation Survey Tele- New VIVO UF
.gov.uk nl graphis York flickr (L3S) New-
VIVO castle
Times URI wrappr OpenCal Indiana RAE2001
UK Post- Burner ais DBLP
codes statistics (FU
VIVO CiteSeer Roma
data.gov LOIUS Taxon iServe Berlin) IEEE
.uk Cornell
Concept Geo
World data
ESD Fact- OS dcs
Names book dotAC
stan- reference Project
Linked Data NASA (FUB) Freebase
dards data.gov Guten-
.uk
for Intervals (Data GESIS Course-
transport DBpedia berg STW ePrints CORDIS
Incu- ware
data.gov bator) (FUB)
Fishes ERA UN/
.uk
of Texas Geo LOCODE
Uberblic
Euro- Species
The stat dbpedia TCM SIDER Pub KISTI
(FUB) lite Gene STITCH Chem JISC
London Geo KEGG
DIT LAAS
Gazette TWC LOGD Linked Daily OBO Drug
Eurostat Data UMBEL lingvoj Med
(es) Disea-
YAGO Medi some
Care ChEBI KEGG NSF
Linked KEGG KEGG
Linked Drug Cpd
GovTrack rdfabout Glycan
Sensor Data CT Bank Pathway
US SEC Open Reactome
(Kno.e.sis) riese Uni
Cyc Lexvo Path-
totl.net way Pfam PDB
Semantic HGNC
XBRL
WordNet KEGG KEGG
Linked Taxo- CAS Reaction
Twarql (VUA) UniProt Enzyme
rdfabout EUNIS Open nomy
US Census Numbers PRO- ProDom
SITE Chem2
UniRef Bio2RDF
Climbing WordNet SGD Homolo
Linked (W3C) Affy- Gene
Cornetto
GeoData metrix PubMed Gene
UniParc
Ontology
GeneID
Airports
Product
DB UniSTS MGI
Gen
Bank OMIM InterPro
As of September 2010
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 17
23. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
Connecting Mathematics↔Economics Data
How to deal with derived values in datasets?
:pop_sealand2010 :pop_kugelmugel2010
scv:dimension :PrincipalityOfSealand ; scv:dimension :KugelmugelRepublic ;
scv:dimension :Year2010 ; scv:dimension :Year2010 ;
scv:dimension :People18to65years ; scv:dimension :People18to65years ;
rdf:value 7 . rdf:value 11 .
:unemployed_sealand2010 :unemployed_kugelmugel2010
scv:dimension :PrincipalityOfSealand ; scv:dimension :KugelmugelRepublic ;
scv:dimension :Year2010 ; scv:dimension :Year2010 ;
scv:dimension :People18to65years ; scv:dimension :People18to65years ;
rdf:value 2 . rdf:value 1 .
:unemp_rate_sealand2010 :unemp_rate_kugelmugel2010
scv:dimension :PrincipalityOfSealand ; scv:dimension :KugelmugelRepublic ;
scv:dimension :Year2010 ; scv:dimension :Year2010 ;
rdf:value 0.286 . rdf:value 0.091 .
How to validate the derived values?
How to compute them for new data points?
unemp. rate = unemployed ⇒ link to ‘division’
population
Can also link to custom/non-standard functions
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 18
24. Introduction Formalisation Bridging the Gap: Representation & Services Conclusion & Outlook
Conclusion
Semiformal knowledge representation . . .
makes formalisation comprehensible to domain experts
allows for linking mathematical formalisations to arbitrary
application domains
enables useful services for experts and non-experts
Christoph Lange Bridging Domain Knowledge and its Formalisation – and Integrating Services on Top of That 2011-12-19 19