6 research outputs found

    Query learning of derived ω\omega-tree languages in polynomial time

    Full text link
    We present the first polynomial time algorithm to learn nontrivial classes of languages of infinite trees. Specifically, our algorithm uses membership and equivalence queries to learn classes of ω\omega-tree languages derived from weak regular ω\omega-word languages in polynomial time. The method is a general polynomial time reduction of learning a class of derived ω\omega-tree languages to learning the underlying class of ω\omega-word languages, for any class of ω\omega-word languages recognized by a deterministic B\"{u}chi acceptor. Our reduction, combined with the polynomial time learning algorithm of Maler and Pnueli [1995] for the class of weak regular ω\omega-word languages yields the main result. We also show that subset queries that return counterexamples can be implemented in polynomial time using subset queries that return no counterexamples for deterministic or non-deterministic finite word acceptors, and deterministic or non-deterministic B\"{u}chi ω\omega-word acceptors. A previous claim of an algorithm to learn regular ω\omega-trees due to Jayasrirani, Begam and Thomas [2008] is unfortunately incorrect, as shown in Angluin [2016]

    Analysis and testing of black-box component-based systems by inferring partial models

    No full text
    International audienceFrom experience in component-based software engineering, it is known that the integration of high-quality components may not yield high-quality software systems. It is difficult to evaluate all possible interactions between the components in the system to uncover inter-component misfunctions. The problem is even harder when the components are used without source code, specifications or formal models. Such components are called black boxes in literature. This paper presents an iterative approach of combining model learning and testing techniques for the formal analysis of a system of black-box components. In the approach, individual components in the system are learned as finite state machines that (partially) model the behavioural structure of the components. The learned models are then used to derive tests for refining the partial models and/or finding integration faults in the system. The approach has been applied on case studies that have produced encouraging results

    Analysis and testing of black-box component based systems by inferring partial models

    No full text
    International audienceFrom experience in component-based software engineering, it is known that the integration of high-quality components may not yield high-quality software systems. It is difficult to evaluate all possible interactions between the components in the system to uncover inter-component misfunctions. The problem is even harder when the components are used without source code, specifications or formal models. Such components are called black boxes in literature. This paper presents an iterative approach of combining model learning and testing techniques for the formal analysis of a system of black-box components. In the approach, individual components in the system are learned as finite state machines that (partially) model the behavioural structure of the components. The learned models are then used to derive tests for refining the partial models and/or finding integration faults in the system. The approach has been applied on case studies that have produced encouraging results

    Cyberdéfense des infrastructures critiques

    Get PDF

    Evaluating Software Testing Techniques: A Systematic Mapping Study

    Get PDF
    Software testing techniques are crucial for detecting faults in software and reducing the risk of using it. As such, it is important that we have a good understanding of how to evaluate these techniques for their efficiency, scalability, applicability, and effectiveness at finding faults. This thesis enhances our understanding of testing technique evaluations by providing an overview of the state of the art in research. To accomplish this we utilize a systematic mapping study; structuring the field and identifying research gaps and publication trends. We then present a small case study demonstrating how our mapping study can be used to assist researchers in evaluating their own software testing techniques. We find that a majority of evaluations are empirical evaluations in the form of case studies and experiments, most of these evaluations are of low quality based on proper methodology guidelines, and that relatively few papers in the field discuss how testing techniques should be evaluated
    corecore