Presentation is loading. Please wait.

Presentation is loading. Please wait.

CHROME-REF CHR v Online Model-driven Engine with Reasoning Explanation Facilities INRIA / UFPE Rafael Oliveira – Jacques Robin.

Similar presentations


Presentation on theme: "CHROME-REF CHR v Online Model-driven Engine with Reasoning Explanation Facilities INRIA / UFPE Rafael Oliveira – Jacques Robin."— Presentation transcript:

1 CHROME-REF CHR v Online Model-driven Engine with Reasoning Explanation Facilities INRIA / UFPE Rafael Oliveira – Rafael.Oliveira@inria.fr Jacques Robin - robin.jacques@gmail.com Pierre Deransart - Pierre.Deransart@inria.fr Rocquencourt, France October 28, 2009

2 Agenda Separation of concerns (CHROME-REF Project) ▫ Engine, Extraction, Driver and Analyzer Generic CHR v Trace Schema for Debugging Trace Driver Trace Analyzer Conclusion Future Works

3 Separation of Concerns CHR ECLiPSe Prolog CHR ECLiPSe Prolog CHR SWI Prolog CHR SWI Prolog CHR SICStus Prolog CHR SICStus Prolog Debugging Tool …… At present, there exists a number of useful debugging tools for CHR Tools were designed and implemented in a specific way for each solver Each implementation results in a set of one-to-one specialized connections between a solver and its tools

4 Separation of Concerns CHR Trace Schema CHR Trace Schema CHR Trace CHR Trace Analyzer Trace Meta-Theory... Flexible Portable Extraction CHR ECLiPSe Prolog CHR ECLiPSe Prolog CHR SWI Prolog CHR SWI Prolog CHR SICStus Prolog CHR SICStus Prolog … Extraction query Driver

5 CHROME-REF Project Engine CHROME engine a compiler that take a CHR  base into imperative Java objects MDE approach during its process of compilation by means of ATL transformations. Extraction Theoretical Operational Semantics ω t Integration (ω t + CHROME) Generic CHRv Trace Schema for Debugging Driver A processor, on the fly, of traces events according to the query requested by the analyzer. Analyzer Debugging Tool

6 CHROME-REF Project Engine CHROME engine a compiler that take a CHR  base into imperative Java objects MDE approach during its process of compilation by means of ATL transformations. Extraction Theoretical Operational Semantics ω t Integration (ω t + CHROME) Generic CHRv Trace Schema for Debugging Driver A processor, on the fly, of traces events according to the query requested by the analyzer. Analyzer Debugging Tool

7 Generic CHR v Trace Schema for Debugging A generic trace enables any tool to be defined almost independently The trace syntax is represented using an XML Schema A trace instance is encoded in an XML format according to this XML Schema and follows the described semantics.

8 EIntroduce Etrace label:String Etrace label:String EApply ESolve EFail EInitialState Goal BIC UDC * Rule Built-ins * Generic CHR v Trace Schema for Debugging Class Diagram

9 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://orcas.org.br/chrv" xmlns="http://orcas.org.br/chrv" elementFormDefault="qualified">... Generic CHR v Trace Schema for Debugging XML Schema

10 Trace Driver A processor, on the fly, of traces events according to the query requested by the analyzer. 3 Services ▫ Register Analyzer ▫ Notify Analyzer ▫ Update Filter

11 Trace Driver A processor, on the fly, of traces events according to the query requested by the analyzer. 3 Services ▫ Register Analyzer ▫ Notify Analyzer ▫ Update Filter CHROME sends trace events register, filter and notify analyzers

12 Trace Driver

13

14 context TraceDriver::registerAnalyzer(a:Analyzer) post: analyzer->includes(d) context TraceDriver::notifyDriver(eTrace:ETrace) post: analyzers->forAll(a | a^notification(filterTrace(a.request, eTrace))) context TraceDriver::updateFilter(a:Analyzer, request:Request) post: a.request = request Trace Driver

15 Trace Analyzer Requirements ▫ A graphical environment component for writing and analyzing CHR v programs ▫ User may ask for more information about the current event ▫ The execution can be blocked until the analyzer notify it that it can proceed

16 Trace Analyzer

17

18 Conclusion

19 Any questions?

20 References 1.V ITORINO, J. Model-Driven Engineering a Versatile, Extensible, Scalable Rule Engine through Component Assembly and Model Transformations. Universidade Federal de Pernambuco. CIn. Ciência da Computação, 2009. 2.D UCK, G., S TUCKEY, P., D E L A B ANDA, M., and H OLZABAUR, C. The refined operational semantics of Constraint Handling Rules. Lecture notes in computer science (2004), 90–104.


Download ppt "CHROME-REF CHR v Online Model-driven Engine with Reasoning Explanation Facilities INRIA / UFPE Rafael Oliveira – Jacques Robin."

Similar presentations


Ads by Google