Computer-Aided Reasoning: ACL2 Case Studies - download pdf or read online

By Matt Kaufmann, Panagiotis Manolios, J Strother Moore

ISBN-10: 144194981X

ISBN-13: 9781441949813

ISBN-10: 1475731884

ISBN-13: 9781475731880

Computer-Aided Reasoning: ACL2 Case Studies illustrates how the computer-aided reasoning procedure ACL2 can be utilized in efficient and cutting edge how you can layout, construct, and retain and software program structures. incorporated listed here are technical papers written by way of twenty-one participants that file on self-contained case reports, a few of that are sanitized commercial tasks. The papers care for a wide selection of principles, together with floating-point mathematics, microprocessor simulation, version checking, symbolic trajectory review, compilation, evidence checking, actual research, and a number of other others.
Computer-Aided Reasoning: ACL2 Case Studies is intended for 2 audiences: these trying to find leading edge how you can layout, construct, and continue and software program platforms swifter and extra reliably, and people wishing to profit tips on how to do that. the previous viewers contains undertaking managers and scholars in survey-oriented classes. The latter viewers comprises scholars and execs pursuing rigorous ways to and software program engineering or formal equipment. Computer-Aided Reasoning: ACL2 Case Studies can be utilized in graduate and upper-division undergraduate classes on software program Engineering, Formal tools, layout, thought of Computation, synthetic Intelligence, and automatic Reasoning.
The publication is split into elements. half I starts off with a dialogue of the hassle considering utilizing ACL2. It additionally encompasses a short advent to the ACL2 good judgment and its mechanization, that's meant to offer the reader adequate heritage to learn the case stories. A extra thorough, textbook advent to ACL2 should be present in the spouse publication, Computer-Aided Reasoning: An Approach.
The center of the publication is a component II, the place the case experiences are awarded. The case experiences include routines whose strategies are on the net. additionally, the whole ACL2 scripts essential to formalize the types and turn out all of the houses mentioned are on the internet. for instance, after we say that one of many case stories formalizes a floating-point multiplier and proves it right, we suggest that not just are you able to learn an English description of the version and the way it used to be proved right, yet you could receive the complete formal content material of the undertaking and replay the proofs, if you want, together with your replica of ACL2.
ACL2 could be bought from its domestic web page. the consequences stated in every one case examine, as ACL2 enter scripts, in addition to workout ideas for either books, can be found from this page.

Show description

Read Online or Download Computer-Aided Reasoning: ACL2 Case Studies PDF

Similar compilers books

New PDF release: Virtual Machines

This e-book bargains a distinct perception into the construction of digital machines for sequential, object-oriented and parallel languages, and makes use of comparisons of alternative VMs to supply genuine, sensible examples. kingdom transitions are used as a proper strategy for the specification of digital machines all through and – additionally – transitions and kingdom transitions on the subject of the overall operation are integrated for specification of the digital laptop for the event-based procedure.

Read e-book online Formal Methods for Components and Objects: Third PDF

Formal tools were utilized effectively to the verification of medium-sized courses in protocol and layout. besides the fact that, their software to the improvement of enormous platforms calls for extra emphasis on specification, modelling and validation suggestions assisting the options of reusability and modifiability, and their implementation in new extensions of present programming languages.

Download e-book for iPad: Programming Methodology by Annabelle Mclver, Carroll Morgan

The second one half the 20 th century observed an unbelievable raise in computing energy; this present day desktops are unbelievably quicker than they was once, they've got extra reminiscence, they could converse oftentimes with distant machines around the globe - and so they can healthy on a computing device. yet, regardless of this impressive development, the voracity of modem functions and consumer expectancies nonetheless pushes know-how correct to the restrict.

Anna-Lena Johansson's Prolog Versus You: An Introduction to Logic Programming PDF

Prolog as opposed to You exhibits how one can take in the gauntlet of the good judgment programming language Prolog (PROgramming in common sense) and use it as an obedient programming and challenge fixing software. common sense programming emphasizes that programming is a human job and as a result that courses might be effortless for people to write down, comprehend and manage.

Extra info for Computer-Aided Reasoning: ACL2 Case Studies

Sample text

An example follows. (defthm equal-char-code (implies (and (characterp x) (characterp y)) (implies (equal (char-codex) (char-code y)) (equal x y))) :rule-classes nil :hints ... 3 Macros and Backquote Users can define macros to extend the language. The symbol cadr is defined as a macro in the ACL2 source code. Here is its definition. (defmacro cadr (x) (list 'car (list 'cdr x))) The body of the macro constructs an expression that is used in place of calls to cadr. This macro could be written using "backquote" notation.

If it fails to find a path, it returns the symbol 'failure. Here is the definition of find-next-step, ignoring the necessary measure hint. (defun find-next-step (c stack b g) (cond ((endp c) 'failure) ((member (car c) stack) (1) (2) Moore 49 (find-next-step (cdr c) stack b g)) ((equal (car c) b) (rev (cons b stack))) (t (let ((temp (find-next-step (neighbors (car c) g) (cons (car c) stack) (3) (4) b g))) (if (equal temp 'failure) (find-next-step (cdr c) stack b g) temp))))) (4a) (4b) (4c) Reading it clause-by-clause: (1) If there are no neighbors left to consider, return 'failure.

2 Given the definition of rev, prove car-last-rev below. 3 How would you rewrite (no-duplicatesp (append a (cons e b))) to simplify it? Prove the theorem. " In this work, we use the word "graph" always to mean directed graph. We represent a graph as an alist. Formally then a graph is a list of pairs; each pair consists of a key and a value. Each key is the name of a node of the graph. The value associated with a key is the list of neighbor nodes immediately accessible from the given node. For sanity, we insist that each node name appear only once as a key in the alist, and that the list of neighbors of a node contain no duplications.

Download PDF sample

Computer-Aided Reasoning: ACL2 Case Studies by Matt Kaufmann, Panagiotis Manolios, J Strother Moore

by Kenneth

Rated 4.72 of 5 – based on 27 votes