# Double Sign

It is quite a serious error and very likely deliberate offense when a validator signs more than one block with the same height and parent block. The reference protocol implementation should already have logic to prevent this, so only the malicious code can trigger this. When Double Sign happens, the validator should be removed from the Validator Set right away.

Anyone can submit a slash request on Pools Chain with the evidence of Double Sign of Pools Chain, which should contain the 2 block headers with the same height and parent block, sealed by the offending validator. Upon receiving the evidence, if the Pools Chain verifies it to be valid:

The validator will be removed from validator set by an instance Pools Chain validator set update Cross-Chain update;

A predefined amount of POOLS would be slashed from the self-delegated POOLS of the validator; Both validator and its delegators will not receive the staking rewards.

Part of the slashed POOLS will allocate to the submitter’s address, which is a reward and larger than the cost of submitting slash request transaction

The rest of the slashed POOLS will allocate to the other validators’ custody addresses, and distributed to all delegators in the same way as blocking reward.

**Inavailability**

The liveness of Pools Chain relies on everyone in the Proof of Staked validator set can produce blocks timely when it is their turn. Validators can miss their turn due to any reason, especially problems in their hardware, software, configuration or network. This instability of the operation will hurt the performance and introduce more indeterministic into the system.

There can be an internal smart contract responsible for recording the missed blocking metrics of each validator. Once the metrics are above the predefined threshold, the blocking reward for validator will not be relayed to Pools Chain for distribution but shared with other better validators. In such a way, the poorly-operating validator should be gradually voted out of the validator set as their delegators will receive less or none reward. If the metrics remain above another higher level of threshold, the validator will be dropped from the rotation, and this will be propagated back to Pools Chain, then a predefined amount of POOLS would be slashed from the self-delegated POOLS of the validator. Both validators and delegators will not receive their staking rewards.

<br>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://pools-chain.gitbook.io/documentation/technical-architecture/double-sign.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
