Documentation
¶
Overview ¶
Package formal provides formal verification support: TLA+ generation, invariants, model checking.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GenerateCoqSkeleton ¶
GenerateCoqSkeleton generates a Coq proof skeleton for encode/decode correctness.
Types ¶
type Invariant ¶
type Invariant struct {
Name string `json:"name"`
Expression string `json:"expression"`
Description string `json:"description"`
}
Invariant represents a protocol invariant.
type VerificationResult ¶
type VerificationResult struct {
Invariant Invariant `json:"invariant"`
Satisfied bool `json:"satisfied"`
CounterExample string `json:"counter_example,omitempty"`
}
VerificationResult holds the result of a verification check.
func CheckInvariants ¶
func CheckInvariants(lib *protocol.Library, name string, samples [][]byte) ([]VerificationResult, error)
CheckInvariants checks basic invariants against sample data.
Click to show internal directories.
Click to hide internal directories.