~/talk

Type-level Property Based Testing

Talkat TyDe 2024 · on Friday, 2024-09-06· [testing]
links:none on file
links:none on file
slides:none on file

An automated framework in Idris 2 runs type-level QuickCheck during compilation to test dependent-type models built as an indexed state monad. Properties generate traces (100 random tests by default), find a counterexample showing the ATM stays in CardInserted within 10 steps, and after adding a retry-with-eject rule the property passes (100/100). The approach uses dependent pairs to generate indexed values, emits failing traces in the REPL, and currently uses a fixed compile-time random seed.

AI-written summary · about

  1. 0:00Type-level PBT intro
  2. 1:27Verification spectrum & stateful systems
  3. 3:36Dependent types for state machines
  4. 7:10Challenges in dependent types
  5. 9:59ATM operations with QuickCheck
  6. 11:02Idris 2 & QuickCheck testing
  7. 13:32Unified spec & implementation
  8. 15:19Testing type-level programs
  9. 16:06Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.