You may have to register before you can download all our books and magazines, click the sign up button below to create a free account.
Semantics will play an important role in the future development of software systems and domain-specific languages. This book provides a needed introductory presentation of the fundamental ideas behind these approaches, stresses their relationship by formulating and proving the relevant theorems, and illustrates the applications of semantics in computer science. Historically important application areas are presented together with some exciting potential applications. The text investigates the relationship between various methods and describes some of the main ideas used, illustrating these by means of interesting applications. The book provides a rigorous introduction to the main approaches to formal semantics of programming languages.
Program analysis utilizes static techniques for computing reliable information about the dynamic behavior of programs. Applications include compilers (for code improvement), software validation (for detecting errors) and transformations between data representation (for solving problems such as Y2K). This book is unique in providing an overview of the four major approaches to program analysis: data flow analysis, constraint-based analysis, abstract interpretation, and type and effect systems. The presentation illustrates the extensive similarities between the approaches, helping readers to choose the best one to utilize.
This textbook is an introduction to the use of formal methods ranging from semantics of key programming constructs to techniques for the analysis and verification of programs. The authors use program graphs as the mechanism for representing the control structure of programs in order to find a balance between generality and conceptual complexity. The early chapters on program graphs and the Guarded Commands language are sufficient introduction for most readers to then enjoy a plug-and-play approach to the remaining chapters. These explain formal methods for analysing the behaviour of programs in various ways ranging from verification, via program analysis and language-based security, to model...
Reinhard Wilhelm's career in Computer Science spans more than a third of a century. This Festschrift volume, published to honor him on his 60th Birthday on June 10, 2006, includes 15 refereed papers by leading researchers, his graduate students and research collaborators, as well as current and former colleagues, who all attended a celebratory symposium held at Schloss Dagstuhl, Germany.
This Festschrift is in honor of Chris Hankin, Professor at the Imperial College in London, UK, on the Occasion of His 65th Birthday. Chris Hankin is a Fellow of the Institute for Security Science and Technology and a Professor of Computing Science. His research is in cyber security, data analytics and semantics-based program analysis. He leads multidisciplinary projects focused on developing advanced visual analytics and providing better decision support to defend against cyber attacks. This Festschrift is a collection of scientific contributions related to the topics that have marked the research career of Professor Chris Hankin. The contributions have been written to honour Chris' career and on the occasion of his retirement.
Concurrent and distributed processes occur everywhere: in embedded systems, in information networks and databases, and in the form of applets roaming around on the World-Wide-Web. This book presents and develops state-of-the-art validation techniques for detecting safety violations; the focus is on the correctness of techniques that suffice for fully automatic validation of key components of such systems. It builds on and extends the notion of types, popular in many sequential programming languages as a technique for catching certain kinds of errors already at program development time, by incorporating behaviours (or structured effects) that are able to track the information flow in the presence of procedures, channel based communication, and the dynamic creation of network topologies. The technical development is performed for a language based on Concurrent ML.
This Festschrift volume is published in honor of Hanne Riis Nielson and Flemming Nielson on the occasion of their 60th birthdays in 2014 and 2015, respectively. The papers included in this volume deal with the wide area of calculi, semantics, and analysis. The book features contributions from colleagues, who have worked together with Hanne and Flemming through their scientific life and are dedicated to them and to their work. The papers were presented at a colloquium at the Technical University of Denmark in January 2016.
This book explains and explores the principal techniques of Data Mining, the automatic extraction of implicit and potentially useful information from data, which is increasingly used in commercial, scientific and other application areas. It focuses on classification, association rule mining and clustering. Each topic is clearly explained, with a focus on algorithms not mathematical formalism, and is illustrated by detailed worked examples. The book is written for readers without a strong background in mathematics or statistics and any formulae used are explained in detail. It can be used as a textbook to support courses at undergraduate or postgraduate levels in a wide range of subjects incl...
This Festschrift was published in honor of Joshua Guttman on the occasion of his 66.66 birthday. The impact of his work is reflected in the 23 contributions enclosed in this volume. Joshua’s most influential and enduring contribution to the field has been the development of the strand space formalism for analyzing cryptographic protocols. It is one of several “symbolic approaches” to security protocol analysis in which the underlying details of cryptographic primitives are abstracted away, allowing a focus on potential flaws in the communication patterns between participants. His attention to the underlying logic of strand spaces has also allowed him to merge domain-specific reasoning about protocols with general purpose, first-order logical theories. The identification of clear principles in a domain paves the way to automated reasoning, and Joshua has been a leader in the development and distribution of several tools for security analysis.
This accessible and classroom-tested textbook/reference presents an introduction to the fundamentals of the emerging and interdisciplinary field of data science. The coverage spans key concepts adopted from statistics and machine learning, useful techniques for graph analysis and parallel programming, and the practical application of data science for such tasks as building recommender systems or performing sentiment analysis. Topics and features: provides numerous practical case studies using real-world data throughout the book; supports understanding through hands-on experience of solving data science problems using Python; describes techniques and tools for statistical analysis, machine learning, graph analysis, and parallel programming; reviews a range of applications of data science, including recommender systems and sentiment analysis of text data; provides supplementary code resources and data at an associated website.