SlideShare a Scribd company logo
Dipartimento di Matematica e Informatica

A System for Stratified Datalog Programs

SUPERVISOR
Prof. Francesco Ricca

STUDENT
Simone Spaccarotella
138937
Recursion

DLV

Semi
Naive
Method

Fixpoint

DLVDB

Datalog

Tp
Operator

Stratification


DLVDB
 is DBMS-dependent
 does not handle the Data-Types properly



It lacks a Standard API for DLV/DLVDB
Recursion

DLV

DLVDB

Semi
Naive
Method

Rel
Grounder

Datalog

Fixpoint

Tp
Operator

Stratification

DLV
Wrapper

RESTdlv

REST

Remote
API

Front-End

Web
Service


RelGrounder
 A new Evaluator of Stratified Datalog Programs
 Developed in Java
 DBMS-independent
 Handles Data Types



RESTdlv
 An umbrella project that cover RESTdlv WS and RESTdlv Client
 … and SudokuLogic (a PoC for RESTdlv WS)
 DLVWrapper uses RESTdlv Client
RelGrounder

Datalog
INPUT

Translation
Layer

Persistence
Layer

Mapping

EXECUTE

DB

SQL
Statement

SQL
Statement

Datalog
Rule


Non-ground Atom  Relation Schema
 Predicate Symbol  Relation Name
 Terms  Attributes



Ground Atoms  Tuples



XML Mapping File
evaluator = EvaluatorInjector.getInstance(properties);
evaluator.init(program);

evaluator.storeProgramFacts(programScanner.getFacts());
evaluator.storeMappingFacts();
// for each strongly-connected component
while (programScanner.hasNextComponent()) {
StronglyConnectedComponent component = null;
component = programScanner.nextComponent();
evaluator.evaluateExitRules(component);
evaluator.evaluateRecursiveRules(component);
}
evaluator.commit();
p(X,Y,Z) :- ....., ....., .....

INSERT INTO p(X,Y,Z) (
SELECT ....
FROM ....
[WHERE] ....
)
p(X,Y) :- t(X,Y), s(Y), Y >= 10, Y <= 50

SELECT t.X, t.Y
FROM t, s
WHERE t.Y = s.Y AND t.Y >= 10 AND t.Y <= 50
rich(X) :- worker(X,_), salary(X,Y), Y >= 2500.
subsidy(X,500) :- worker(X,_), not rich(X).

INSERT INTO subsidy(X) (
SELECT worker.X, 500
FROM worker
WHERE worker.X NOT IN (
SELECT rich.X
FROM rich
)
)
INSERT INTO q(X,Y) (
SELECT t.X, t.Y
FROM table as t
)

X

Y

7
2
13
9
2
0

9
11
5
10
11
3

2
0

11
3
INSERT INTO q(X,Y) (
SELECT t.X, t.Y
FROM table as t
EXCEPT ( SELECT * FROM q )
)
X

Y

7
2
13
9
0

9
11
5
10
3

2
0

11
3
INSERT INTO q(X,Y) (
SELECT t.X, t.Y
FROM table as t
WHERE NOT EXISTS (
SELECT X, Y FROM q
WHERE t.X = q.X AND t.Y = q.Y
)
)
INSERT INTO q(X,Y) (
SELECT t.X, t.Y
FROM table as t
WHERE NOT EXISTS (
SELECT X, Y FROM q
WHERE t.X = q.X AND t.Y = q.Y
)
)
table
X

Y

7
2
13
9
2

9
11
5
10
11
INSERT INTO q(X,Y) (
SELECT DISTINCT t.X, t.Y
FROM table as t
WHERE NOT EXISTS (
SELECT X, Y FROM q
WHERE t.X = q.X AND t.Y = q.Y
)
)
table
X

Y

7
2
13
9
2

9
11
5
10
11
INSERT INTO q(X,Y) (
SELECT DISTINCT ......
FROM ......
UNION
SELECT DISTINCT ......
FROM ......
)

Source 1

Source 2

X

Y

X

Y

7
2
13
9

9
11
5
10

10
2
4
7

14
11
3
9
Tk-1

T0
T1
Tk-2

∆T0

n=0

∆T1

n=1

...
∆Tk-1

n = k-1



Fixpoint
t(X,Y) :- t(X,Z), t(Z,Y), …, t(Y,X), q(X,Y).

∆Tk = ∆Tk-1 Tk-1 … Tk-1
Tk-2 ∆Tk-1 … Tk-1
……………
Tk-2 Tk-2 … ∆Tk-1

Qu
Qu
Q
t(X,Y) :- t(X,Z), t(Z,Y), …, t(Y,X), q(X,Y).

∆Tk-1

Tk-1

…

Tk-1

Qu…

∆Tk-1 Tk-2 … Tk-2 Q u
∆Tk-1 ∆Tk-1 … Tk-2 Q u
∆Tk-1 Tk-2 … ∆Tk-1 Q u
∆Tk-1 ∆Tk-1 … ∆Tk-1 Q u


Auxiliary-table Approach



ID-based Approach
Auxiliary-table
Approach

DLVDB
Strategy

DLVDB-like
Strategy
P

P

P_d1

P_d

∆ at k-1

∆ at k
P

P

P_new

P_old

∆ at k

Tk-1

P_temp
P

P
P
50

30
10


a RESTful web service for DLV (aka web API)



a remote workspace for Datalog Programs



a simple way to use DLV/DLVDB functionalities



developed in Java
<HTTP VERB, URI>

RESTdlv
WS

JSON
XML

Network

Bean

RESTdlv
Bean
Client
URI

RESTdlv WS

Resource
Servlet

HTTP
Verb
•POST
•GET
•PUT
•DELETE

Method

•C
•R
•U
•D
RESTdlv
Bean
WS

Bean

Network

RESTdlv
Client
RESTdlv
WS

Datalog Programs
DLV Wrapper

use

RESTdlv
Client

use

RESTdlv
Client

(Java)

Third-Party SW

RESTdlv WS

N
E
T
W
O
R
K

(Java)

Third-Party SW
(any)

Web App
(HTML + Javascript)

Mobile App
(Android, iOS, ecc)


A DEMO of the Sudoku game



A proof of concept for RESTdlv WS
Bean
WS

Network

Bean
Client


RelGrounder



Three implementations of the Semi-Naïve method



RESTdlv WS + SudokuLogic



RESTdlv Client (integrated in DLVWrapper)
Thank you all.

More Related Content

Similar to A System for Stratified Datalog Programs - Master's thesis presentation

QR Factorizations and SVDs for Tall-and-skinny Matrices in MapReduce Architec...
QR Factorizations and SVDs for Tall-and-skinny Matrices in MapReduce Architec...QR Factorizations and SVDs for Tall-and-skinny Matrices in MapReduce Architec...
QR Factorizations and SVDs for Tall-and-skinny Matrices in MapReduce Architec...Austin Benson
 
Stratosphere Intro (Java and Scala Interface)
Stratosphere Intro (Java and Scala Interface)Stratosphere Intro (Java and Scala Interface)
Stratosphere Intro (Java and Scala Interface)Robert Metzger
 
JavaCro 2014 Scala and Java EE 7 Development Experiences
JavaCro 2014 Scala and Java EE 7 Development ExperiencesJavaCro 2014 Scala and Java EE 7 Development Experiences
JavaCro 2014 Scala and Java EE 7 Development ExperiencesPeter Pilgrim
 
Tech Talk #4 : RxJava and Using RxJava in MVP - Dương Văn Tới
Tech Talk #4 : RxJava and Using RxJava in MVP - Dương Văn TớiTech Talk #4 : RxJava and Using RxJava in MVP - Dương Văn Tới
Tech Talk #4 : RxJava and Using RxJava in MVP - Dương Văn TớiNexus FrontierTech
 
Observer design for descriptor linear systems
Observer design for descriptor linear systemsObserver design for descriptor linear systems
Observer design for descriptor linear systemsMahendra Gupta
 
Executing Sql Commands
Executing Sql CommandsExecuting Sql Commands
Executing Sql Commandsleminhvuong
 
Executing Sql Commands
Executing Sql CommandsExecuting Sql Commands
Executing Sql Commandsphanleson
 
Functional programming with clojure
Functional programming with clojureFunctional programming with clojure
Functional programming with clojureLucy Fang
 
An Introduction to RxJava
An Introduction to RxJavaAn Introduction to RxJava
An Introduction to RxJavaSanjay Acharya
 
Практическое применения Akka Streams
Практическое применения Akka StreamsПрактическое применения Akka Streams
Практическое применения Akka StreamsAlexey Romanchuk
 
«Практическое применение Akka Streams» — Алексей Романчук, 2ГИС
«Практическое применение Akka Streams» — Алексей Романчук, 2ГИС«Практическое применение Akka Streams» — Алексей Романчук, 2ГИС
«Практическое применение Akka Streams» — Алексей Романчук, 2ГИС2ГИС Технологии
 
Introduction to R programming
Introduction to R programmingIntroduction to R programming
Introduction to R programmingAlberto Labarga
 
Pointcuts and Analysis
Pointcuts and AnalysisPointcuts and Analysis
Pointcuts and AnalysisWiwat Ruengmee
 
User Defined Aggregation in Apache Spark: A Love Story
User Defined Aggregation in Apache Spark: A Love StoryUser Defined Aggregation in Apache Spark: A Love Story
User Defined Aggregation in Apache Spark: A Love StoryDatabricks
 
User Defined Aggregation in Apache Spark: A Love Story
User Defined Aggregation in Apache Spark: A Love StoryUser Defined Aggregation in Apache Spark: A Love Story
User Defined Aggregation in Apache Spark: A Love StoryDatabricks
 

Similar to A System for Stratified Datalog Programs - Master's thesis presentation (20)

QR Factorizations and SVDs for Tall-and-skinny Matrices in MapReduce Architec...
QR Factorizations and SVDs for Tall-and-skinny Matrices in MapReduce Architec...QR Factorizations and SVDs for Tall-and-skinny Matrices in MapReduce Architec...
QR Factorizations and SVDs for Tall-and-skinny Matrices in MapReduce Architec...
 
Lec 08 - DESIGN PROCEDURE
Lec 08 - DESIGN PROCEDURELec 08 - DESIGN PROCEDURE
Lec 08 - DESIGN PROCEDURE
 
Stratosphere Intro (Java and Scala Interface)
Stratosphere Intro (Java and Scala Interface)Stratosphere Intro (Java and Scala Interface)
Stratosphere Intro (Java and Scala Interface)
 
JavaCro'14 - Scala and Java EE 7 Development Experiences – Peter Pilgrim
JavaCro'14 - Scala and Java EE 7 Development Experiences – Peter PilgrimJavaCro'14 - Scala and Java EE 7 Development Experiences – Peter Pilgrim
JavaCro'14 - Scala and Java EE 7 Development Experiences – Peter Pilgrim
 
JavaCro 2014 Scala and Java EE 7 Development Experiences
JavaCro 2014 Scala and Java EE 7 Development ExperiencesJavaCro 2014 Scala and Java EE 7 Development Experiences
JavaCro 2014 Scala and Java EE 7 Development Experiences
 
ICSM07.ppt
ICSM07.pptICSM07.ppt
ICSM07.ppt
 
Tech Talk #4 : RxJava and Using RxJava in MVP - Dương Văn Tới
Tech Talk #4 : RxJava and Using RxJava in MVP - Dương Văn TớiTech Talk #4 : RxJava and Using RxJava in MVP - Dương Văn Tới
Tech Talk #4 : RxJava and Using RxJava in MVP - Dương Văn Tới
 
Observer design for descriptor linear systems
Observer design for descriptor linear systemsObserver design for descriptor linear systems
Observer design for descriptor linear systems
 
Executing Sql Commands
Executing Sql CommandsExecuting Sql Commands
Executing Sql Commands
 
Executing Sql Commands
Executing Sql CommandsExecuting Sql Commands
Executing Sql Commands
 
Functional programming with clojure
Functional programming with clojureFunctional programming with clojure
Functional programming with clojure
 
TreSQL
TreSQL TreSQL
TreSQL
 
An Introduction to RxJava
An Introduction to RxJavaAn Introduction to RxJava
An Introduction to RxJava
 
DDL and DML statements.pptx
DDL and DML statements.pptxDDL and DML statements.pptx
DDL and DML statements.pptx
 
Практическое применения Akka Streams
Практическое применения Akka StreamsПрактическое применения Akka Streams
Практическое применения Akka Streams
 
«Практическое применение Akka Streams» — Алексей Романчук, 2ГИС
«Практическое применение Akka Streams» — Алексей Романчук, 2ГИС«Практическое применение Akka Streams» — Алексей Романчук, 2ГИС
«Практическое применение Akka Streams» — Алексей Романчук, 2ГИС
 
Introduction to R programming
Introduction to R programmingIntroduction to R programming
Introduction to R programming
 
Pointcuts and Analysis
Pointcuts and AnalysisPointcuts and Analysis
Pointcuts and Analysis
 
User Defined Aggregation in Apache Spark: A Love Story
User Defined Aggregation in Apache Spark: A Love StoryUser Defined Aggregation in Apache Spark: A Love Story
User Defined Aggregation in Apache Spark: A Love Story
 
User Defined Aggregation in Apache Spark: A Love Story
User Defined Aggregation in Apache Spark: A Love StoryUser Defined Aggregation in Apache Spark: A Love Story
User Defined Aggregation in Apache Spark: A Love Story
 

More from Simone Spaccarotella

BBC Sounds Update 28 November 2019
BBC Sounds Update 28 November 2019BBC Sounds Update 28 November 2019
BBC Sounds Update 28 November 2019Simone Spaccarotella
 
BBC Sounds Update - Play team (Snowy Edition)
BBC Sounds Update - Play team (Snowy Edition)BBC Sounds Update - Play team (Snowy Edition)
BBC Sounds Update - Play team (Snowy Edition)Simone Spaccarotella
 
HTTP/2 and web development practices
HTTP/2 and web development practicesHTTP/2 and web development practices
HTTP/2 and web development practicesSimone Spaccarotella
 
AWS account migration for BBC iPlayer Radio
AWS account migration for BBC iPlayer RadioAWS account migration for BBC iPlayer Radio
AWS account migration for BBC iPlayer RadioSimone Spaccarotella
 
MicroWSMO editor - Bachelor's thesis presentation
MicroWSMO editor - Bachelor's thesis presentationMicroWSMO editor - Bachelor's thesis presentation
MicroWSMO editor - Bachelor's thesis presentationSimone Spaccarotella
 

More from Simone Spaccarotella (7)

BBC Sounds Update 28 November 2019
BBC Sounds Update 28 November 2019BBC Sounds Update 28 November 2019
BBC Sounds Update 28 November 2019
 
BBC Sounds Update - Play team (Snowy Edition)
BBC Sounds Update - Play team (Snowy Edition)BBC Sounds Update - Play team (Snowy Edition)
BBC Sounds Update - Play team (Snowy Edition)
 
BBC Sounds Web Next Architecture
BBC Sounds Web Next ArchitectureBBC Sounds Web Next Architecture
BBC Sounds Web Next Architecture
 
HTTP/2 and web development practices
HTTP/2 and web development practicesHTTP/2 and web development practices
HTTP/2 and web development practices
 
Recommendations assumptions
Recommendations assumptionsRecommendations assumptions
Recommendations assumptions
 
AWS account migration for BBC iPlayer Radio
AWS account migration for BBC iPlayer RadioAWS account migration for BBC iPlayer Radio
AWS account migration for BBC iPlayer Radio
 
MicroWSMO editor - Bachelor's thesis presentation
MicroWSMO editor - Bachelor's thesis presentationMicroWSMO editor - Bachelor's thesis presentation
MicroWSMO editor - Bachelor's thesis presentation
 

Recently uploaded

PART A. Introduction to Costumer Service
PART A. Introduction to Costumer ServicePART A. Introduction to Costumer Service
PART A. Introduction to Costumer ServicePedroFerreira53928
 
Basic_QTL_Marker-assisted_Selection_Sourabh.ppt
Basic_QTL_Marker-assisted_Selection_Sourabh.pptBasic_QTL_Marker-assisted_Selection_Sourabh.ppt
Basic_QTL_Marker-assisted_Selection_Sourabh.pptSourabh Kumar
 
Basic Civil Engg Notes_Chapter-6_Environment Pollution & Engineering
Basic Civil Engg Notes_Chapter-6_Environment Pollution & EngineeringBasic Civil Engg Notes_Chapter-6_Environment Pollution & Engineering
Basic Civil Engg Notes_Chapter-6_Environment Pollution & EngineeringDenish Jangid
 
Pragya Champions Chalice 2024 Prelims & Finals Q/A set, General Quiz
Pragya Champions Chalice 2024 Prelims & Finals Q/A set, General QuizPragya Champions Chalice 2024 Prelims & Finals Q/A set, General Quiz
Pragya Champions Chalice 2024 Prelims & Finals Q/A set, General QuizPragya - UEM Kolkata Quiz Club
 
Features of Video Calls in the Discuss Module in Odoo 17
Features of Video Calls in the Discuss Module in Odoo 17Features of Video Calls in the Discuss Module in Odoo 17
Features of Video Calls in the Discuss Module in Odoo 17Celine George
 
IATP How-to Foreign Travel May 2024.pdff
IATP How-to Foreign Travel May 2024.pdffIATP How-to Foreign Travel May 2024.pdff
IATP How-to Foreign Travel May 2024.pdff17thcssbs2
 
Basic phrases for greeting and assisting costumers
Basic phrases for greeting and assisting costumersBasic phrases for greeting and assisting costumers
Basic phrases for greeting and assisting costumersPedroFerreira53928
 
Danh sách HSG Bộ môn cấp trường - Cấp THPT.pdf
Danh sách HSG Bộ môn cấp trường - Cấp THPT.pdfDanh sách HSG Bộ môn cấp trường - Cấp THPT.pdf
Danh sách HSG Bộ môn cấp trường - Cấp THPT.pdfQucHHunhnh
 
Gyanartha SciBizTech Quiz slideshare.pptx
Gyanartha SciBizTech Quiz slideshare.pptxGyanartha SciBizTech Quiz slideshare.pptx
Gyanartha SciBizTech Quiz slideshare.pptxShibin Azad
 
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptx
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptxStudents, digital devices and success - Andreas Schleicher - 27 May 2024..pptx
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptxEduSkills OECD
 
Dementia (Alzheimer & vasular dementia).
Dementia (Alzheimer & vasular dementia).Dementia (Alzheimer & vasular dementia).
Dementia (Alzheimer & vasular dementia).Mohamed Rizk Khodair
 
Incoming and Outgoing Shipments in 2 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 2 STEPS Using Odoo 17Incoming and Outgoing Shipments in 2 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 2 STEPS Using Odoo 17Celine George
 
Telling Your Story_ Simple Steps to Build Your Nonprofit's Brand Webinar.pdf
Telling Your Story_ Simple Steps to Build Your Nonprofit's Brand Webinar.pdfTelling Your Story_ Simple Steps to Build Your Nonprofit's Brand Webinar.pdf
Telling Your Story_ Simple Steps to Build Your Nonprofit's Brand Webinar.pdfTechSoup
 
Benefits and Challenges of Using Open Educational Resources
Benefits and Challenges of Using Open Educational ResourcesBenefits and Challenges of Using Open Educational Resources
Benefits and Challenges of Using Open Educational Resourcesdimpy50
 
Matatag-Curriculum and the 21st Century Skills Presentation.pptx
Matatag-Curriculum and the 21st Century Skills Presentation.pptxMatatag-Curriculum and the 21st Century Skills Presentation.pptx
Matatag-Curriculum and the 21st Century Skills Presentation.pptxJenilouCasareno
 
How to Manage Notification Preferences in the Odoo 17
How to Manage Notification Preferences in the Odoo 17How to Manage Notification Preferences in the Odoo 17
How to Manage Notification Preferences in the Odoo 17Celine George
 
The Last Leaf, a short story by O. Henry
The Last Leaf, a short story by O. HenryThe Last Leaf, a short story by O. Henry
The Last Leaf, a short story by O. HenryEugene Lysak
 
....................Muslim-Law notes.pdf
....................Muslim-Law notes.pdf....................Muslim-Law notes.pdf
....................Muslim-Law notes.pdfVikramadityaRaj
 

Recently uploaded (20)

Post Exam Fun(da) Intra UEM General Quiz - Finals.pdf
Post Exam Fun(da) Intra UEM General Quiz - Finals.pdfPost Exam Fun(da) Intra UEM General Quiz - Finals.pdf
Post Exam Fun(da) Intra UEM General Quiz - Finals.pdf
 
PART A. Introduction to Costumer Service
PART A. Introduction to Costumer ServicePART A. Introduction to Costumer Service
PART A. Introduction to Costumer Service
 
Basic_QTL_Marker-assisted_Selection_Sourabh.ppt
Basic_QTL_Marker-assisted_Selection_Sourabh.pptBasic_QTL_Marker-assisted_Selection_Sourabh.ppt
Basic_QTL_Marker-assisted_Selection_Sourabh.ppt
 
Basic Civil Engg Notes_Chapter-6_Environment Pollution & Engineering
Basic Civil Engg Notes_Chapter-6_Environment Pollution & EngineeringBasic Civil Engg Notes_Chapter-6_Environment Pollution & Engineering
Basic Civil Engg Notes_Chapter-6_Environment Pollution & Engineering
 
Pragya Champions Chalice 2024 Prelims & Finals Q/A set, General Quiz
Pragya Champions Chalice 2024 Prelims & Finals Q/A set, General QuizPragya Champions Chalice 2024 Prelims & Finals Q/A set, General Quiz
Pragya Champions Chalice 2024 Prelims & Finals Q/A set, General Quiz
 
Word Stress rules esl .pptx
Word Stress rules esl               .pptxWord Stress rules esl               .pptx
Word Stress rules esl .pptx
 
Features of Video Calls in the Discuss Module in Odoo 17
Features of Video Calls in the Discuss Module in Odoo 17Features of Video Calls in the Discuss Module in Odoo 17
Features of Video Calls in the Discuss Module in Odoo 17
 
IATP How-to Foreign Travel May 2024.pdff
IATP How-to Foreign Travel May 2024.pdffIATP How-to Foreign Travel May 2024.pdff
IATP How-to Foreign Travel May 2024.pdff
 
Basic phrases for greeting and assisting costumers
Basic phrases for greeting and assisting costumersBasic phrases for greeting and assisting costumers
Basic phrases for greeting and assisting costumers
 
Danh sách HSG Bộ môn cấp trường - Cấp THPT.pdf
Danh sách HSG Bộ môn cấp trường - Cấp THPT.pdfDanh sách HSG Bộ môn cấp trường - Cấp THPT.pdf
Danh sách HSG Bộ môn cấp trường - Cấp THPT.pdf
 
Gyanartha SciBizTech Quiz slideshare.pptx
Gyanartha SciBizTech Quiz slideshare.pptxGyanartha SciBizTech Quiz slideshare.pptx
Gyanartha SciBizTech Quiz slideshare.pptx
 
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptx
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptxStudents, digital devices and success - Andreas Schleicher - 27 May 2024..pptx
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptx
 
Dementia (Alzheimer & vasular dementia).
Dementia (Alzheimer & vasular dementia).Dementia (Alzheimer & vasular dementia).
Dementia (Alzheimer & vasular dementia).
 
Incoming and Outgoing Shipments in 2 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 2 STEPS Using Odoo 17Incoming and Outgoing Shipments in 2 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 2 STEPS Using Odoo 17
 
Telling Your Story_ Simple Steps to Build Your Nonprofit's Brand Webinar.pdf
Telling Your Story_ Simple Steps to Build Your Nonprofit's Brand Webinar.pdfTelling Your Story_ Simple Steps to Build Your Nonprofit's Brand Webinar.pdf
Telling Your Story_ Simple Steps to Build Your Nonprofit's Brand Webinar.pdf
 
Benefits and Challenges of Using Open Educational Resources
Benefits and Challenges of Using Open Educational ResourcesBenefits and Challenges of Using Open Educational Resources
Benefits and Challenges of Using Open Educational Resources
 
Matatag-Curriculum and the 21st Century Skills Presentation.pptx
Matatag-Curriculum and the 21st Century Skills Presentation.pptxMatatag-Curriculum and the 21st Century Skills Presentation.pptx
Matatag-Curriculum and the 21st Century Skills Presentation.pptx
 
How to Manage Notification Preferences in the Odoo 17
How to Manage Notification Preferences in the Odoo 17How to Manage Notification Preferences in the Odoo 17
How to Manage Notification Preferences in the Odoo 17
 
The Last Leaf, a short story by O. Henry
The Last Leaf, a short story by O. HenryThe Last Leaf, a short story by O. Henry
The Last Leaf, a short story by O. Henry
 
....................Muslim-Law notes.pdf
....................Muslim-Law notes.pdf....................Muslim-Law notes.pdf
....................Muslim-Law notes.pdf
 

A System for Stratified Datalog Programs - Master's thesis presentation