Beyond Hoare Logic

0.0(0)
Studied by 0 people
call kaiCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/16

encourage image

There's no tags or description

Looks like no tags are added yet.

Last updated 5:26 PM on 4/3/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai

No analytics yet

Send a link to your students to track their progress

17 Terms

1
New cards

Euclidean Algorithm Specification

  • Method to find gcd(x: nat, y: nat)

    • Requires x != 0 && y != 0

    • Ensures n == gcd(x,y)

    • Uses gcd function for precise postcondition

2
New cards

Function as Specification

  • Function gcd(x: nat, y: nat) defined recursively
    • Returns x if x == y
    • If x > y, calls gcd(x-y, y)
    • If y > x, calls gcd(x, y-x)
    • Provides executable specification
    • Must ensure termination of recursion
3
New cards

Function Termination Condition

  • Requires well-founded recursion
    • Parameters must strictly decrease
    • Ensures x+y decreases with each call
    • Dafny checks termination automatically.
4
New cards

Specification Benefits

  • Improves readability of code
    • Enables recursive specifications
    • Provides executable reference implementation
    • Must include termination proof for recursion.
5
New cards

Verification History Timeline

  • Turing (1949): Program correctness
    • Floyd (1967): Flowchart reasoning
    • Hoare (1969): Hoare logic
    • Dijkstra (1976): Weakest precondition
    • Back (1980): Stepwise refinement
    • Jones (1981): Rely/guarantee
    • Abrial (1996): B Method
    • Reynolds (2002): Separation logic
    • McIver/Morgan (2005): Probabilistic reasoning
    • Platzer (2018): Differential dynamic logic
    • Daggitt et al. (2022): Neural network verification.
6
New cards

Stepwise Refinement

  • Method for constructing correct-by-construction programs
    • Involves a series of refinement steps
    • Each step preserves correctness
    • Semantics described by weakest preconditions.
7
New cards

Rely/Guarantee Reasoning

  • Extension of Hoare logic for concurrent programs
    • Rely condition: Assumptions about other processes
    • Guarantee condition: Commitments to other processes
    • Compositional proof technique for concurrency.
8
New cards

B Method

  • Industrial verification method used in Paris Metro Line 14
    • Influenced by Dijkstra's weakest precondition
    • Event-B extends to system development
    • Widely applied in railway domain.
9
New cards

Separation Logic

  • Extension of Hoare logic for low-level programs
    • Compositional reasoning about heaps
    • Basis for Facebook Infer static analysis tool
    • Handles shared mutable data structures.
10
New cards

Probabilistic Reasoning

  • Introduced probabilistic predicate transformers
    • Focuses on programs with stochastic behaviors
    • Provides quantitative reasoning
    • Distinguishes between probabilistic and non-deterministic programs.
11
New cards

Differential Dynamic Logic

  • Framework for hybrid systems
    • Based on Hoare logic
    • Includes compositional reasoning with differential equations
    • Verified applications in autonomous driving and aviation.
12
New cards

Vehicle Language

  • Domain-specific language for neural network verification
    • Interfaces with interactive theorem provers
    • Enhances maintainability and scalability
    • Embeds logical specifications into neural networks.
13
New cards

Turing Award Winners in Verification

  • Edsger Dijkstra (1972): Program correctness
    • Robert Floyd (1978): Flowchart reasoning
    • Tony Hoare (1980): Hoare logic foundations.
14
New cards

Alan Turing's Contribution

  • Proposed method for verifying program correctness
    • Suggested making definite assertions
    • Aims to establish overall program correctness.
15
New cards

Floyd's Flowcharts

  • Developed a diagrammatic notation
    • Used for reasoning about programs rigorously
    • Extended meanings to program assertions
    • Influenced Hoare logic's development.
16
New cards

Hoare Logic Evolution

  • Also termed Floyd-Hoare logic
    • Axiomatic system for program reasoning
    • Focuses on pre/postconditions
    • Foundational for modern verification.
17
New cards

Dijkstra's Weakest Precondition

  • Strategy for valid deductions in Hoare logic
    • wp(S, Q): weakest precondition for establishing Q
    • Enables automated verification of programs.

Explore top notes

note
IB Chemistry 3.1 Periodic Table
Updated 1266d ago
0.0(0)
note
Aula APS Redes Territorializacao
Updated 501d ago
0.0(0)
note
EMSF110 - Trauma Exam
Updated 997d ago
0.0(0)
note
US History Chap. 11
Updated 926d ago
0.0(0)
note
AFPF casus 5
Updated 443d ago
0.0(0)
note
World History 2 Midterm
Updated 217d ago
0.0(0)
note
IB Chemistry 3.1 Periodic Table
Updated 1266d ago
0.0(0)
note
Aula APS Redes Territorializacao
Updated 501d ago
0.0(0)
note
EMSF110 - Trauma Exam
Updated 997d ago
0.0(0)
note
US History Chap. 11
Updated 926d ago
0.0(0)
note
AFPF casus 5
Updated 443d ago
0.0(0)
note
World History 2 Midterm
Updated 217d ago
0.0(0)

Explore top flashcards

flashcards
History Unit 5 Test
70
Updated 1127d ago
0.0(0)
flashcards
Los 99 nombres de Allah
100
Updated 215d ago
0.0(0)
flashcards
Antidiabetic Drugs
52
Updated 1219d ago
0.0(0)
flashcards
ИМА
553
Updated 442d ago
0.0(0)
flashcards
NL woordenschat blok 1 en 2
49
Updated 1231d ago
0.0(0)
flashcards
Hinduism
20
Updated 1103d ago
0.0(0)
flashcards
History Unit 5 Test
70
Updated 1127d ago
0.0(0)
flashcards
Los 99 nombres de Allah
100
Updated 215d ago
0.0(0)
flashcards
Antidiabetic Drugs
52
Updated 1219d ago
0.0(0)
flashcards
ИМА
553
Updated 442d ago
0.0(0)
flashcards
NL woordenschat blok 1 en 2
49
Updated 1231d ago
0.0(0)
flashcards
Hinduism
20
Updated 1103d ago
0.0(0)