• Tidak ada hasil yang ditemukan

Computer Aided Verification

N/A
N/A
Nguyễn Gia Hào

Academic year: 2023

Membagikan "Computer Aided Verification"

Copied!
386
0
0

Teks penuh

Tevfik Bultan University of California, Santa Barbara, USA Pavol Cerny Vienna University of Technology, Austria. Krishna S India Institute of Technology, Bombay, India Sriram Sankaranarayanan University of Colorado at Boulder, USA Natarajan Shankar SRI International, USA.

Model Checking

In this paper, we present the third version of Automata Tutor, a tool to help teachers and students with large courses on automata and formal languages. Another version of Automata Tutor supported automatic evaluation and feedback for constructions of finite automata and is already used by thousands of users in dozens of countries.

1 Introduction

This paper describes the new components introduced by Automata Tutor v3 and how this new version improves on the previous version. Auser's study was conducted on a class of 950 students to evaluate the effectiveness and usability of Automata Tutor v3.

2 Automata Tutor in a Nutshell

In our survey, students report that they learned quickly, felt confident and enjoyed using Automata Tutor v3 and found it easy to use. As shown in a large user study conducted on the first version of Automata Tutor [6], this rapid feedback cycle is encouraging for students and results in students spontaneously exploring more practice problems and engaging with the course material.

Fig. 1. Common structure of practical sessions for CS classes.
Fig. 1. Common structure of practical sessions for CS classes.

3 Design

University and Course Management

The students cannot immediately see the problems, but only after the teachers have decided to ask them. When using their university's login service, teachers get a certified mapping from users to students and enable teachers to use Automata Tutor v3 to grade homework or exams.

New Problem Types

This includes setting the maximum number of points, the number of attempts allowed, and the start and end date. One can either register by email or, if the university supports it, log in using an external login service such as LDAP or Oauth.

Automatic Problem Generation

4 Implementation and Scalability

This local deployment served as an important test-bed before the tool was publicly deployed online at scale. Due to its modular structure, the tool is easily scalable by having multiple frontends and backends along with a load balancer.

5 Evaluation and User Study

I prefer to use AT instead of pen and paper exercises (12.9% disagreed, but the mean and median are 4). 5.Questions from the survey we conducted to evaluate Automata Tutor, showing that the tool is preferred by most students.

Fig. 5. Question from the survey we conducted to evaluate Automata Tutor, showing that the tool is preferred by a majority of students.
Fig. 5. Question from the survey we conducted to evaluate Automata Tutor, showing that the tool is preferred by a majority of students.

6 Conclusion

Images or other third-party material in this chapter are covered under this chapter's Creative Commons license, unless otherwise noted in the credit line for the material. If the material is not covered by a Creative Commons Chapter license and your intended use is not permitted by law or exceeds the permitted use, you will need to obtain permission directly from the copyright holder.

Generalized B¨ uchi Automata via Improved Semi-determinization

Since 2015, many new results have been published: some direct translations of LTL to semi-deterministic automata specialized complementary constructions for semi-deterministic automata [4,6], algorithms for quantitative control of MDP models based on semi-deterministic automata [13,25] semi-deterministic automata, and reinforcement learning of control policy using semi-deterministic automata [21]. As a result, it can translate TGBAs into smaller semi-deterministic automata than (to the best of our knowledge) the only other semi-deterministic automata tool called nba2ldba [26].

2 Improvements in Semi-determinization

Intuitively, a TGBAA with a set of states Q and a single set of accepting transitions F can be transformed into a semi-deterministic TBA B as follows. Note that Seminator 1.1 can only produce a semi-deterministic TGBA with multiple acceptance sets when given a semi-deterministic TGBA as input.

Fig. 1. Structure of a semi-deterministic automaton. The deterministic part contains all accepting transitions and states reachable from them
Fig. 1. Structure of a semi-deterministic automaton. The deterministic part contains all accepting transitions and states reachable from them

3 Implementation and Usage

The target of a cut transition leading from q is constructed in the same way as the successor to the hypothetical state ({q},∅,0) of the deterministic part. Additional Jupyter notebooks distributed with the tool document the effect of the various optimization options.1.

Fig. 2. Workflow for the two operation modes of seminator: semi-determinizing and complementing via semi-determinization.
Fig. 2. Workflow for the two operation modes of seminator: semi-determinizing and complementing via semi-determinization.

4 Experimental Evaluation

Semi-determinization

In the (semi-)deterministic category, the automaton produced by byltl2tgba and passed to both versions of Seminator is already semi-deterministic. Figure 4 shows the distribution of differences between the semi-deterministic slots produced by Owl+best+Spot and Seminator 2 for the non-semideterministic random set.

Complementation

6. Running times of complementation tools on the 83 hard cases of the non-semi-deterministic random benchmark. Finally, Fig.6 compares the running times of these tools over the 83 hard cases of non-semi-deterministic random benchmark (a case is hard if at least one tool did not complete in 10 s).

Fig. 5. Comparison of Seminator 2 against Spot and Fribourg+Spot in terms of the sizes (i.e., number of states) of complement automata produced for the not  semi-deterministic random benchmark
Fig. 5. Comparison of Seminator 2 against Spot and Fribourg+Spot in terms of the sizes (i.e., number of states) of complement automata produced for the not semi-deterministic random benchmark

5 Conclusion

Esparza, J., Kˇret´ınsk´y, J., Sickert, S.: One theorem to rule them all: a unified translation of LTL inω-automata. Oura, R., Sakakibara, A., Ushio, T.: Rule policy reinforcement learning for linear temporal logic specifications using limit deterministic B¨uchi automata.

Autonomous Aircraft

Related Work

Flow-based monitoring approaches focus on an expressive specification language when dealing with non-binary data. TheCopilotframework [19] contains a declarative dataflow language from which constant-space and constant-time C monitors are created; these warranties enable use on an embedded device.

2 Setup

  • Mission
  • Non-Intrusive Instrumentation
  • StreamLAB
  • FPGA as Monitoring Platform
  • RTLola Specifications
  • VHDL Synthesis

1Hz annotation.3 The current δaltitude calculates the difference between the average and current altitude. It includes a validation of GPS measurements and a cross-validation of the GPS module against the Inertial Measurement Unit (IMU).

Fig. 1. DLR’s autonomous superAR- superAR-TIS equipped with optical navigation.
Fig. 1. DLR’s autonomous superAR- superAR-TIS equipped with optical navigation.

3 Results

Note that the geo-fence specification checks for 12 crossings in parallel, one for each face of the fence (cf. Fig.2). When monitoring the geo-fence of the reconnaissance mission in Fig.2, all twelve face crossings were successfully detected.

4 Conclusion

In addition, when replaying the sensor data from the enclosed backyard experiment from Sect.2.1, the erratic GPS sensor data results in 113 violations with respect to the GPS module on its own. Other checks, for example detecting a degradation of the GPS module based on its output frequency, were not violated in any flight and were therefore not reported.

Realizing ω -regular Hyperproperties

We find that propositional quantification, unlike the satisfiability problem, has an impact on the realizability problem: it becomes undecidable when a propositional∀∃ quantifier alternation is combined with a single universal trace quantifier. We find that an important factor for the decidability of the realizability problem is the number of universal traces that occur in a formula.

Fig. 1. The realizability problem of HyperQPTL. Left and below of the solid line are the decidable fragments, right above the solid line the undecidable fragments.
Fig. 1. The realizability problem of HyperQPTL. Left and below of the solid line are the decidable fragments, right above the solid line the undecidable fragments.

2 Preliminaries

For more than one universal trace quantifier, we show that decidability can be guaranteed for a fragment that we call the linear∀∗πQ∗q fragment. We also show that all the above fragments are rigid, that is, realizability of all other formulas is generally undecidable.

3 ω -Regular Hyperproperties

The Expressiveness of HyperQPTL

A system satisfies a prompt LTL formula ϕ if there is a limit such that all traces of the system satisfy the formula where each p in ϕ is replaced by ≤k, i.e. the system must satisfy all prompt contingencies with ink steps. For example, ϕ= pψ holds in a system if there is a bound k such that all traces of the system at all times satisfy ψ within ink steps.

Fig. 2. The dining cryptographers problem with three cryptographers.
Fig. 2. The dining cryptographers problem with three cryptographers.

4 HyperQPTL Realizability

No Universal Trace Quantifier

Hence, if the witness sequences for the given propositions can be correctly resolved, any strategy realizes╕QPTL. The second relation is satisfied since every two traces πi, πj of a strategy tree are satisfied by the construction (Iπi =Iπj)R(Oπi=Oπj).

Single Universal Trace Quantifier

We denote by ϕ[J →a π] the formula where each propositional quantifier∃qj(or∀qj, respectively) mej∈Jis is replaced by the corresponding trace quantity∃πj (or∀πj, respectively); and each qj inψ is replaced by ngaaπj. Together with qi and pi for input i, they simulate a universal and existentially determined trace from the model.

Fig. 5. Distributed architecture encoding existential choice of traces.
Fig. 5. Distributed architecture encoding existential choice of traces.

Multiple Universal Trace Quantifiers

Our goal was to process the largest possible fragments for which the HyperQPTL feasibility problem remains solvable. The three fragments for which we can prove decidability all imply logical QPTL, for which the realizability problem is known to be non-elementary (already its satisfiability problem is non-elementary [30]).

5 Experiments

We present the tool AdamMC as the first model checker for Petri nets with feedthroughs against Flow-LTL. The tool reduces the model check problem for safe Petri nets with feedthroughs against Flow-LTL to the model check problem for safe Petri nets against LTL.

Table 1. Experimental results for prompt arbiter
Table 1. Experimental results for prompt arbiter

2 Petri Nets with Transits and Flow-LTL

As a final step, AdamMC reduces the model checking problem of secure Petri nets against LTL to a circuit model checking problem. In Sect.4, we code algorithmically simultaneous updates of software-defined networks in Petri nets with transit.

3 Application Areas

2.Overview of AdamMC workflow: The application areas of the tool are given by three different input fields: software-defined network/Flow-LTL (Input I), transit Petri nets/Flow-LTL (Input II), and Petri nets/LTL (Input III). More advanced tools such as LoLA [32] and ITS-Tools [29] are limited to interleaving-maximal executions and locations as atomic propositions.

4 Verifying Updates of Software Defined Networks

Network Topology, Configurations, and Updates

In addition, AdamMC provides a simultaneous view of runs and can check concurrency-maximum runs that require each sub-process of the system to run maximally, rather than just the entire system. For Petri net model check (Input III), we allow Petri nets in APT and PNML format as inputs and provide a parser for LTL formulas.

3. Overview of this equential approach: each transition activation of the original net is split into the first transition activation in the run formula subnet and then the transition activation in each subnet following a flow formula. We use 'until' operators in the constructed LTL formula to skip only steps that do not involve following the guessed chain in the flow formula.

Assumptions and Requirements

The order of switch updates is determined by nesting sequential and parallel updates. The update is performed with a special token that moves through unique locations of the form uf, ss, sf, ps, pf for the start and end of each switch update u∈SwU, each sequential update∈SeU, and each parallel update p∈PaU.

5 Algorithms and Optimizations

However, various possibilities to reduce the number of gates of the created circuit worsened the performance of some benchmark families and improved the performance of others. An overview of the selectable optimization parameters can be found in the documentation of AdamMC [12].

6 Evaluation

We found that the versions of the sequential and the parallel approach with inhibitor arcs to trace flow chains are generally faster than the versions without. Nb of TOs (of 230 experts in the formula) experience a bloat with until operators in the sequential approach, but only need a disjunction in the parallel approach.

7 Related Work

The synthesizer pattern control subroutine assumes that each packet sees at most one updated switch. There are a considerable number of model checking tools (e.g. for Petri nets and an annual model checking competition [20]. AdamMC is limited to secure Petri nets, while other tools can handle bounded and colored Petri nets.

8 Conclusion

Finkbeiner, B., Gieseking, M., Hecking-Harbusch, J., Olderog, E.: A model of checking data flows in concurrent network updates (full version). Finkbeiner, B., Gieseking, M., Hecking-Harbusch, J., Olderog, E.: AdamMC - A model checker for Petri nets with transits against Flow-LTL.

Automata, and Reduction

Linear Temporal Logic

The main difference between the state-based and action-based formalism is that in the state-based formalism any number of atomic theorems can apply at each step. The following fact about the state-based semantics can be proved by induction on the formula structure:.

B¨ uchi Automata

In this case, the conversion to B means that one transition is made for every a∈A for which φ holds when true is assigned to a and false is assigned to all other actions. Note that in the special case where the two automata have the same alphabet (Σ1 = Σ2), every action is synchronized and the parallel composition is the usual "synchronous product". In this case L(B1B2) = L(B1)∩ L(B2).

Labeled Transition Systems

In practice, tools that convert LTL formulas into BAs produce an automaton in which an edge is labeled by a propositional formula φoverαf. Such an edge represents a series of transitions, one for each P ⊆ A for which φ holds for the valuation that assigns true to each element of P and false to each element of A\P.

3 Interruptible Properties

  • Definition and Examples
  • Decidability of Interruptibility of LTL Formulas
  • Generation of Interruptible LTL Formulas
  • Decidability of Interruptibility of B¨ uchi Automata

An accepting path for ζ cannot pass through a sharp state or DIV because only invisible transitions end in these states. An accepting path for ζ in ˆB consists of a prefix ˆθ of visible transitions followed by an infinitely accepting pathξ of invisible transitions.

4 On-the-Fly Partial Order Reduction

General Theory and Soundness Theorem

Then for allj ≥i a the first action is θj and a is not in the extensive set last(ηj). Hence there is a cycle in R for which a is always enabled, but never in the extensive array, which contradicts C3.

Fig. 1. Counterexample to Theorem 3 if B is not in interrupt normal form: (a) the LTS M , (b) the BA B representing GF b , (c) the product space—dashed edges are in the full, but not reduced, space, and (d) the result of normalizing B and removing unreacha
Fig. 1. Counterexample to Theorem 3 if B is not in interrupt normal form: (a) the LTS M , (b) the BA B representing GF b , (c) the product space—dashed edges are in the full, but not reduced, space, and (d) the result of normalizing B and removing unreacha

Ample Sets for a Parallel Composition of LTSs

For C3, we actually have the stronger condition that at least one state is fully enabled in every cycle in the reduced space. The outer query preserves j in the state, and the inner query uses j to reconstruct the SCCC0 and the spacious setE.

5 Related Work

Much of the previous work on POR for LTSs deals with the "offine" case, i.e. the construction of a subspace of M that preserves certain classes of properties. In contrast, Theorem3 deals with an on-the-fly algorithm, i.e. the construction of a subspace of MB.

6 Experimental Results and Conclusions

The results show that all formulas from 2016 and 2019 are interruptible, which matches the expectations of the RERS organizers. Examining the output of Spin in verbose mode reveals that the problem is as described in Section 5: the entire set of enabled transitions is explored on each transition due to the update of the shared variable.

Fig. 2. Time to solve RERS 2019 parallel LTL problems using McRERS . Each problem comprises 20 LTL formulas
Fig. 2. Time to solve RERS 2019 parallel LTL problems using McRERS . Each problem comprises 20 LTL formulas

On the other hand, looking at the global proof (i.e. the set of lemmas discovered to disprove a bounded counterexample), it is almost obvious that (a−c)≤(b−d) is an interesting generalization to try. Furthermore, we propose an efficient instantiation of the rules for the theory of Linear Integer Arithmetic.

Fig. 1. Verification tasks to illustrate sources of divergence for Spacer . The call nd () non-deterministically returns a Boolean value.
Fig. 1. Verification tasks to illustrate sources of divergence for Spacer . The call nd () non-deterministically returns a Boolean value.

2 Background

However, to simplify the presentation, we describe the algorithm only for the specific case of the security problem. We emphasize that Spacer, as well as the developments in this article, apply to the more general setting of CHCs (both linear and non-linear).

3 Global Guidance of Local Proofs

Without a global view of the overall evidence, it is difficult to determine when the algorithm is generalizing too much. Of course, α is only conjectured if it is not already blocked and contains no known reachable states.

4 Global Guidance for Linear Integer Arithmetic

  • Linear Integer Arithmetic: Background
  • Lemma Selection
  • Subsume Rule for LIA
  • Concretize Rule for LIA
  • Conjecture Rule for LIA
  • Putting It All Together

The other columns (coordinates) can be expressed by linear combinations of the linearly independent ones. Note that the latter is amay pob, in the sense that some of the states it represents may not lead to security breaches.

5 Evaluation

We compare it to Spacer because it dominated the competition by solving 85% of benchmarks in CHC-COMP 2019 (20% more than second place) and 60% of benchmarks in CHC-COMP 2018 (10% more than second place). For the comparison with LinearArbitrary, we used both the CHC-COMP benchmarks and the benchmarks from the artifact assessment of [28].

Figure 3 provides a detailed comparison of GSpacer with and without inter- inter-polation
Figure 3 provides a detailed comparison of GSpacer with and without inter- inter-polation

6 Related Work

This comparison shows that incorporating local reasoning with global guidance not only mitigates its shortcomings but also outperforms global data-driven reasoning. Compared to IMC, the propagation phase and inductive generalization of IC3 [7] can be seen as providing global guidance using lemmas found in other parts of the search space.

7 Conclusion and Future Work

A Subsum-like rule is proposed in [26] for bit vector theory and in [4] for LRA, but in both cases without global instructions. More importantly, global guidance decouples the Spacer dependency from the interpolation strategy and performs almost equally well in all three interpolation schemes we consider.

Software-Defined Networks

Another key limitation is the fact that they cannot think of a controller program that is itself responsible for changes in the network configuration. Formal verification methods that incorporate controller code into the network model can solve this important problem.

2 Software-Defined Network Model

  • Formal Model Definition
  • SDN Model Components
  • Guarded Transitions
  • Specification Language

Initially, switches' flow tables are empty, so p is copied to the controller's request queue (nomatch transition); note that p in the package list of the switch remains in black due to deep0.8qabstraction. The controller's packet handler is then called (ctrl transition) and, as a result, (1) p is copied to the forwarding queue of the switch in black, (2) line r1 is copied to the control queue of the switch in black, and (3) line r2 is copied to the control queue of the switch in white.

Figure 1 illustrates a high-level view of OpenFlow interactions (left side), modelled actions and queues (right side).
Figure 1 illustrates a high-level view of OpenFlow interactions (left side), modelled actions and queues (right side).

3 Model Checking

  • Contextual Partial-Order Reduction
  • State Representation
  • Performance Comparison
  • Model Expressivity

A value of 1 in the fq section indicates that a single copy of the packet is stored in the forward queue of the respective switch. A value of 1 in the rq section indicates that a copy of the packet sent by the respective switch (when anomatch transition is enabled) is stored in the controller's request queue.

Table 1. Safeness predicates
Table 1. Safeness predicates

Software Verification

Finding loop invariants is arguably the most crucial part of proof-finding in program verification. We perform two case studies that demonstrate the flexibility of Code2Inv on different classes of loop invariants.

3 Framework

Alternatively, neural networks can be initialized with pre-trained weights, which can increase overall efficiency. The neural context is initialized to grouping the embeddings of a given verification instance (line 13) and then maintained by αctx (line 17), which at each step includes the neural state of the partially generated candidate invariant (line 16), where the neural state is encoded by inv.

Fig. 2. (a) C program snippet in SSA form; (b) its graph representation.
Fig. 2. (a) C program snippet in SSA form; (b) its graph representation.

4 Evaluation

We compare Code2Inv with our earlier specialized prototype and three other advanced verification tools: C2I [29], LoopInvGen [26] and ICE-DT [10]. In the corresponding CFA in Fig.3 this is represented by the accessibility of the location labeled 10.

Fig. 4. (a) Comparison of Code2Inv with state-of-the-art solvers; (b) comparison between untrained model and pre-trained model.
Fig. 4. (a) Comparison of Code2Inv with state-of-the-art solvers; (b) comparison between untrained model and pre-trained model.

3 Approach

  • From Witnesses to Programs
  • Programs from Violation Witnesses
  • Programs from Correctness Witnesses
  • Experimental Setup
  • Results

The results of the validation phase in SV-COMP 2020 [5] are summarized in Table 1 (for violation witnesses) and Table 2 (for correctness witnesses). Reducer-Based Conditional Model Checking. The concept of generating programs from an ARG has also been used to successfully construct conditional verifiers [14].

Fig. 4. Violation witness W V
Fig. 4. Violation witness W V

2 Support for Pointers

The basis for SPARK's ownership policy is the movement semantics of tasks. Ownership The system ensures that the designated data is not accessed again through the source of the task.

3 Recursive Data Structures

In fact, any effects that could occur because variables share a substructure cannot be observed because of the ownership rules. Y:= Y. Next; -- Ownership of the first cell in Y is lost for good end loop; -- Ownership of X cannot be restored.

4 Borrowing Ownership

Although within the scope of the borrower, these indirect changes may be ignored by the analysis because property policies make them impossible to detect. In order to reconstruct the borrowed object from the value of the borrower, we need to track the relationship between them.

5 Describing the Borrow Relation

Gambar

Fig. 2. Overview of Automata Tutor v3 (our contributions in green). The teacher creates exercises on various topics
Fig. 1. Common structure of practical sessions for CS classes.
Fig. 3. Creating a new problem of type “PDA Construction”.
Fig. 4. Feedback received when solving the problem created in Fig. 3.
+7

Referensi

Dokumen terkait