Documentation

VerifiedMBSE.Behavior.FDIR

FDIR Specification and StateMachineComponent #

Defines FDIRSpec (a bundle of safety, detection, and recovery requirements) and StateMachineComponent, which integrates structural (PartDef) and behavioral (StateMachine) models into a single verified component.

Note on Import #

StateMachineKripke をインポートする理由: Always sm P / Eventually sm P / Leads sm P Q の形の呼び出しが、KripkeStructure 版 LTL API に StateMachine → KripkeStructure の coerce 経由で流れるようにするため。

structure VerifiedMBSE.Behavior.FDIRSpec {S D : Type} {inv : SDProp} (sm : StateMachine S D inv) (isFault isNominal : SProp) (isSafe : DProp) :

FDIRSpec: structure bundling three FDIR requirements. Constructing a value of this type = mechanized verification of all FDIR requirements.

  • safety : Always sm fun (x : S) (d : D) => isSafe d

    R1 Safety: □(isSafe d)

  • detection : Eventually sm fun (s : S) (x : D) => isFault s

    R2 Fault detectability: ◇(isFault s)

  • recovery : Leads sm (fun (s : S) (x : D) => isFault s) fun (s : S) (x : D) => isNominal s

    R3 Fault recoverability: □(isFault s → ◇(isNominal s'))

Instances For

    SMInvariantCompatible: the state machine invariant implies the PartDef invariant. Consistency condition between structural and behavioral models.

    Equations
    Instances For

      StateMachineComponent: component that adds state machine behavior to a PartDef.

      Instances For

        Consistency condition for StateMachineComponent.

        Equations
        Instances For
          def VerifiedMBSE.Behavior.StateMachineComponent.reachable_gives_instance {I : Core.Interpretation} {pd : Core.PartDef} {S : Type} {inv : SI pd.baseTypeProp} (smc : StateMachineComponent I pd S inv) {s : S} {d : I pd.baseType} (hr : Reachable smc.sm s d) :

          Phase 2/3 connection theorem: construct a PartInstance from a reachable (state, data) pair.

          Equations
          Instances For

            If WellFormed, a PartInstance exists.

            Equations
            Instances For