Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/PVS/fault_tolerance/   (Beweissystem der NASA Version 6.0.9©)  Datei vom 28.9.2014 mit Größe 2 kB image not shown  

SSL inexact_comm.pvs

  Sprache: PVS
 

%
% Purpose: properties of inexact communication through 
%          multiple-stages
%
%

inexact_comm
[
    N   : [nat -> posnat]
] : THEORY

  BEGIN

  IMPORTING
    node_functions[N, real],
    inexact_comm_stage

  i, j, k: VAR nat

  sources: VAR [j : nat -> finite_set[below(N(j))]] 

  sent:  VAR sent_vec
  rcvd:  VAR rcvd_matrix
  check: VAR check_function
  epsilon: VAR [nat -> nonneg_real]
  tau: VAR [i: nat -> tau_type]
  cf: VAR [nat -> consensus_function]


  %
  % Abstracted fault assumptions
  %

  % same predicate is in exact_comm
  enabled_within?(rcvd, check, j, k)(sources): bool = 
    FORALL i : j <= i AND i < k IMPLIES
      enabled_within?[N(i), N(i + 1), real](rcvd(i), check(i))(sources(i))
  
  % (simple) majority

  majority_lower?(sent, rcvd, check, epsilon, j, k): bool =
    FORALL i : j <= i AND i < k IMPLIES
      majority_lower?[N(i), N(i + 1)](sent(i), rcvd(i), check(i), epsilon(i))

  majority_upper?(sent, rcvd, check, epsilon, j, k): bool =
    FORALL i : j <= i AND i < k IMPLIES
      majority_upper?[N(i), N(i + 1)](sent(i), rcvd(i), check(i), epsilon(i))

  majority_imprecision?(sent, rcvd, check, epsilon, j, k): bool =
    FORALL i : j <= i AND i < k IMPLIES
      majority_imprecision?[N(i), N(i + 1)](sent(i), rcvd(i), check(i), epsilon(i))

  exists_all_symmetric?(sent, rcvd, check, epsilon, cf, j, k): bool =
    EXISTS i: j <= i AND i < k AND
      inexact_consensus?(cf(i)) AND
      all_symmetric?(rcvd(i), check(i), epsilon(i)) AND
      majority_imprecision?(sent, rcvd, check, epsilon, i + 1, k)

  % quorum, a generalized majority (from simple to consensus to unamimous)

  quorum_lower?(sent, rcvd, check, tau, epsilon, j, k): bool =
    FORALL i : j <= i AND i < k IMPLIES
      quorum_lower?[N(i), N(i + 1)](sent(i), rcvd(i), check(i), tau(i), epsilon(i))

  quorum_upper?(sent, rcvd, check, tau, epsilon, j, k): bool =
    FORALL i : j <= i AND i < k IMPLIES
      quorum_upper?[N(i), N(i + 1)](sent(i), rcvd(i), check(i), tau(i), epsilon(i))

  quorum_imprecision?(sent, rcvd, check, tau, epsilon, j, k): bool =
    FORALL i : j <= i AND i < k IMPLIES
      quorum_imprecision?[N(i), N(i + 1)](sent(i), rcvd(i), check(i), tau(i), epsilon(i))

  exists_all_symmetric?(sent, rcvd, check, tau, epsilon, cf, j, k): bool =
    EXISTS i: j <= i AND i < k AND
      inexact_consensus?(cf(i)) AND
      all_symmetric?(rcvd(i), check(i), epsilon(i)) AND
      quorum_imprecision?(sent, rcvd, check, tau, epsilon, i + 1, k)


END inexact_comm

Messung V0.5 in Prozent
C=87 H=68 G=77

¤ Dauer der Verarbeitung: 0.1 Sekunden  (vorverarbeitet am  2026-06-04) ¤

*© Formatika GbR, Deutschland






Versionsinformation zu Columbo

Bemerkung:

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Anfrage:

Dauer der Verarbeitung:

Sekunden

sprechenden Kalenders