2

I am reading the paper Foundations and tools for the static analysis of Ethereum contracts, by Grischenko et al. Sometimes the authors speak about hyper properties (e.g. Section 5). What exactly is a hyper property in this context?

David Richerby
  • 82,470
  • 26
  • 145
  • 239
Briomkez
  • 107
  • 7

1 Answers1

4

A trace is a (finite or infinite) sequence of program steps. (Some works only consider finite traces, or only infinite ones.)

A property is a set of traces. E.g. all those traces where variable $x$ is never negative.

A hyperproperty is a set of sets of traces. E.g. the sets of traces $T$ where each trace in $T$ is finite.

Some complex security goals can not be described as a property. Non-interference, for instance, can not be checked on a single trace, but only on the set of all the possible traces a given system can generate during execution.

David Richerby
  • 82,470
  • 26
  • 145
  • 239
chi
  • 14,704
  • 1
  • 31
  • 40