quick comment on avoiding underflow
This commit is contained in:
parent
23909ca727
commit
ded936ebad
|
@ -737,8 +737,7 @@ def get_randao_mix(state: BeaconState,
|
||||||
epoch: Epoch) -> Hash:
|
epoch: Epoch) -> Hash:
|
||||||
"""
|
"""
|
||||||
Return the randao mix at a recent ``epoch``.
|
Return the randao mix at a recent ``epoch``.
|
||||||
``epoch`` expected to be between (current_epoch - EPOCHS_PER_HISTORICAL_VECTOR, current_epoch], unless
|
``epoch`` expected to be between (current_epoch - EPOCHS_PER_HISTORICAL_VECTOR, current_epoch].
|
||||||
otherwise noted at a call site.
|
|
||||||
"""
|
"""
|
||||||
return state.randao_mixes[epoch % EPOCHS_PER_HISTORICAL_VECTOR]
|
return state.randao_mixes[epoch % EPOCHS_PER_HISTORICAL_VECTOR]
|
||||||
```
|
```
|
||||||
|
@ -763,12 +762,9 @@ def generate_seed(state: BeaconState,
|
||||||
epoch: Epoch) -> Hash:
|
epoch: Epoch) -> Hash:
|
||||||
"""
|
"""
|
||||||
Generate a seed for the given ``epoch``.
|
Generate a seed for the given ``epoch``.
|
||||||
|
|
||||||
Note that avoiding the underflow on ``get_randao_mix`` here violates
|
|
||||||
the epoch validity condition given in that function's comment.
|
|
||||||
"""
|
"""
|
||||||
return hash(
|
return hash(
|
||||||
get_randao_mix(state, Epoch(epoch + EPOCHS_PER_HISTORICAL_VECTOR - MIN_SEED_LOOKAHEAD)) +
|
get_randao_mix(state, Epoch(epoch + EPOCHS_PER_HISTORICAL_VECTOR - MIN_SEED_LOOKAHEAD)) + #avoid underflow
|
||||||
get_active_index_root(state, epoch) +
|
get_active_index_root(state, epoch) +
|
||||||
int_to_bytes(epoch, length=32)
|
int_to_bytes(epoch, length=32)
|
||||||
)
|
)
|
||||||
|
|
Loading…
Reference in New Issue