Semantics and Algorithms for Parametric Monitoring
نویسندگان
چکیده
Analysis of execution traces plays a fundamental role in many program analysis approaches, such as runtime verification, testing, monitoring, and specification mining. Execution traces are frequently parametric, i.e., they contain events with parameter bindings. Each parametric trace usually consists of many meaningful trace slices merged together, each slice corresponding to one parameter binding. For example, a Java program creating iterator objects i1 and i2 over collection object c1 may yield a trace createIter〈c1 i1〉 next〈i1〉 createIter〈c1 i2〉 updateColl〈c1〉 next〈i1〉 parametric in collection c and iterator i, whose slices corresponding to instances “c, i 7→ c1, i1” and “c, i 7→ c1, i2” are createIter〈c1 i1〉 next〈i1〉 updateColl〈c1〉 next〈i1〉 and, respectively, createIter〈c1 i2〉 updateColl〈c1〉. Several approaches have been proposed to specify and dynamically analyze parametric properties, but they have limitations: some in the specification formalism, others in the type of trace they support. Not unexpectedly, the existing approaches share common notions, intuitions, and even techniques and algorithms, suggesting that a fundamental study and understanding of parametric trace analysis is necessary. This foundational paper aims at giving a semantics-based solution to parametric trace analysis that is unrestricted by the type of parametric property or trace that can be analyzed. Our approach is based on a rigorous understanding of what a parametric trace/property/monitor is and how it relates to its non-parametric counter-part. A generalpurpose parametric trace slicing technique is introduced, which takes each event in the parametric trace and dispatches it to its corresponding trace slices. This parametric trace slicing technique can be used in combination with any conventional, non-parametric trace analysis technique, by applying the later on each trace slice. As an instance, a parametric property monitoring technique is then presented, which processes each trace slice online. Thanks to the generality of parametric trace slicing, the parametric property monitoring technique reduces to encapsulating and indexing unrestricted and well-understood nonparametric property monitors (e.g., finite or push-down automata). The presented parametric trace slicing and monitoring techniques have been implemented and extensively evaluated. Measurements of runtime overhead confirm that the generality of the discussed techniques does not come at a performance expense when compared with existing parametric trace monitoring systems. 1998 ACM Subject Classification: D.1.5 [PROGRAMMING TECHNIQUES]: Object-oriented Programming; D.2.1 [SOFTWARE ENGINEERING]: Requirements/Specifications; D.2.4 [SOFTWARE ENGINEERING]: Software/Program Verification; D.2.5 [SOFTWARE ENGINEERING]: Testing and Debugging—Monitors, Tracing; D.3.1 [PROGRAMMING LANGUAGES]: Formal Definitions and Theory; F.3.1 [LOGICS AND MEANINGS OF PROGRAMS]: Specifying and Verifying and Reasoning about Programs; F.3.2 [LOGICS AND MEANINGS OF PROGRAMS]: Semantics of Programming Languages;
منابع مشابه
Comparison of Machine Learning Algorithms for Broad Leaf Species Classification Using UAV-RGB Images
Abstract: Knowing the tree species combination of forests provides valuable information for studying the forest’s economic value, fire risk assessment, biodiversity monitoring, and wildlife habitat improvement. Fieldwork is often time-consuming and labor-required, free satellite data are available in coarse resolution and the use of manned aircraft is relatively costly. Recently, unmanned aeria...
متن کاملA comparison of parametric and non-parametric methods of standardized precipitation index (SPI) in drought monitoring (Case study: Gorganroud basin)
The Standardized Precipitation Index (SPI) is the most common index for drought monitoring. Although the calculation of this index is usually done by using the gamma distribution fitting of precipitation data, studies have shown that for accurate monitoring of drought, the optimal distribution of precipitation in each month should be determined. On the other hand, in non-stationary time series,...
متن کاملA robust wavelet based profile monitoring and change point detection using S-estimator and clustering
Some quality characteristics are well defined when treated as response variables and are related to some independent variables. This relationship is called a profile. Parametric models, such as linear models, may be used to model profiles. However, in practical applications due to the complexity of many processes it is not usually possible to model a process using parametric models.In these cas...
متن کاملDeclarative Semantics in Object-Oriented Software Development - A Taxonomy and Survey
One of the modern paradigms to develop an application is object oriented analysis and design. In this paradigm, there are several objects and each object plays some specific roles in applications. In an application, we must distinguish between procedural semantics and declarative semantics for their implementation in a specific programming language. For the procedural semantics, we can write a ...
متن کاملIntensional Sets in CLP
We propose a parametric introduction of intensionally defined sets into any CLP (D) language. The result is a language CLP ({D}), where constraints over sets of elements of D and over sets of sets of elements, and so on, can be expressed. The semantics of CLP ({D}) is based on the semantics of logic programs with aggregates and the semantics of CLP over sets. We investigate the problem of const...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- Logical Methods in Computer Science
دوره 8 شماره
صفحات -
تاریخ انتشار 2011