Resolution of Goals with the Functional and Logic Programming Language LPG: Impact of Abstract Interpretation.
ABSTRACT Introductionlpg [1, 5] belongs to the class of languages designed for software specification,rapid prototyping and high-level programming. It allows one to define abstractdata types, functions and predicates within one unified framework : Horn clauselogic with equality. An implementation of lpg for SUN4/SunOS 4.1.3 is availableby URL ftp://ftp.imag.fr/pub/SCOP/LPG. The lpg calculus, designedto solve goals `a la Prolog, is mainly based on narrowing techniques. These techniquesyield...
- SourceAvailable from: Mourad Debbabi[Show abstract] [Hide abstract]
ABSTRACT: Given its special nature, e-commerce yields concerns for providing secure transactions. Accordingly, a number of secu- rity properties, such as secrecy, authentication and fairn ess, have to be guaranteed. In this paper, we present a new method based on abstract interpretation for secrecy verification in e-co mmerce protocols. Hence, we define an abstract message domain and an abstract interpretation over finite and approximated model s of e-commerce protocols. This allows us to build a semi-decidable procedure for e-commerce protocol correctness with respect to the secrecy property. Our approach is fully automatic from cryptographic protocol description to results and requires no user input except the protocol description and the level of the abstraction.01/2008;
- [Show abstract] [Hide abstract]
ABSTRACT: We present a generic scheme for the declarative debugging of programs that are written in rewriting-based languages that are equipped with narrowing. Our aim is to provide an integrated development environment in which it is possible to debug a program and then correct it automatically. Our methodology is based on the combination (in a single framework) of a semantics-based diagnoser that identifies those parts of the code that contain errors and an inductive learner that tries to repair them, once the bugs have been located in the program. We develop our methodology in several steps. First, we associate with our programs a semantics that is based on a (continuous) immediate consequence operator, TR, which models the answers computed by narrowing and is parametric w.r.t. the evaluation strategy, which can be eager or lazy. Then, we show that, given the intended specification of a program R, it is possible to check the correctness of R by a single step of TR. In order to develop an effective debugging method, we approximate the computed answers semantics of R and derive a finitely terminating bottom-up abstract diagnosis method, which can be used statically. Finally, a bug-correction program synthesis methodology attempts to correct the erroneous components of the wrong code. We propose a hybrid, top-down (unfolding-based) as well as bottom-up (induction-based), correction approach that is driven by a set of evidence examples which are automatically produced as an outcome by the diagnoser. The resulting program is proven to be correct and complete w.r.t. the considered example sets. Our debugging framework does not require the user to provide error symptoms in advance or to answer difficult questions concerning program correctness. An implementation of our debugging system has been undertaken which demonstrates the workability of our approach.Theoretical Computer Science 10/2010; · 0.49 Impact Factor
rapidprototypingandhigh?lev elprogramming? Itallowsonetode?neabstract
ablebyURLftp???ftp?imag?fr?p ub?SCOP ?LPG?Thelpgcalculus?designed
to solvegoals?a laProlog?ismainlybasedonnarro wingtechniques?Thesetech?
niquesyieldsemi?decidablealgorithms?Recently?wehave shownin ????? how
abstractin terpretationmayhelptoimpro vetheoperationalsemantics oflpg?
likelanguages?In this demonstration?we in tendtopresen t thesp eci?cationand
programmingstylesof lpgaswellas the capabilitiesofthe ?solver?augmented
threekindsofspeci?cationmodules?namelypr op erties? typesandenrichments?
symbols?Theaxiomatization ofoperatorsisachievedby conditionalequations
whereasthepredicatesde?nitionsareprovidedbyHorn clauses?where thebodies
axiomatizationoftheop erators?likeinalgebraicspeci?cationlanguages? without
intended tode?nenewdatatypes?Theconstructorsofdatatyp es areexplicitly
given?In Figure ??we de?nethedatatypeofnaturalswithsomeoperators?Fig?
catesov erpreviouslyde?neddatat ypes? An enric hment maybegenericornot?
?? g?succ?x????? g?x?
Fig??? Datat ypeof naturalnumberswithsomeoperators?
Fig??? Datat ype of binarytrees?
operator???tree?elem??tree ?el em ???boolov er binarytrees?The def?
inition of thisoperatorrequiresanotherequalityoperatorovertheformalsort
Thepropertymodulesaredesigned tospecify?rst?ordertheories?Suchmo d?
ules are mainlyusedforspeci?cationpurposes?Theyareused tocharacterize
preciselytheformalparametersofgenericmodules?Figures ?and?giv etwoex?
amplesofpropertymodules?FormalSort speci?estheclass ofsetsandEquality
In lpgsystem?onemay eithernormalize termsusinganabstract machineas
inclassicalfunctionallanguagesorsolve goals?a laProlog? Agoalissyntacti?
Fig? ??Prop ertyofan y datat yp e?
?? empty? node?a?i?b????false
maybede?nedinformallyasanextensionoftheSLD?resolution where syn?
tacticuni?cation hasbeenreplacedbysemantic uni?cation?augmentedwith
arebased onnarrowing? Thecurrentimplementationalwaysselectstheleft?
Thereaderfamiliarwithnarrowing?basedalgorithmsmightbesurprised to see
f?g max?g?i?? g?j??????
f?g height?a?????? true?not balanced?a??
NotesinComputer Science? pp????????Springer?Verlag??????
??R?Ec hahed?Surl?int?egrationdeslangagesalg?ebriquesetlo giques?PhDthesis?