> For the complete documentation index, see [llms.txt](https://bitcoin-spark-foundation.gitbook.io/bitcoin-spark-whitepaper/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://bitcoin-spark-foundation.gitbook.io/bitcoin-spark-whitepaper/core-blockchain-function/proof-of-process-transaction-validation.md).

# 'Proof-of-Process' Transaction Validation

*To protect 'first-to-market' advantage of the proprietary Bitcoin Spark system, only conceptual information will be provided here. Full details of functionality will be released towards launch date to avoid 'fast forks' of our work.*

Proof-of-Process is a consensus mechanism blend between 'proof-of-work' and 'proof-of-stake.'\
\
This proprietary system rewards miners/validators for confirming blocks on the network and for providing processing power to those using the network for computational tasks. The work required and power consumption for block confirmation is relatively low.&#x20;

This reward is calculated algorithmically, with weighting skewed towards processing power (the 'work' aspect of consensus), and both rewards per additional power and rewards per larger stake size decrease exponentially to ensure no single entity can capture network control.

A rewards calculator will be available in the Bitcoin Spark application so validators can see profitability before partaking in the network consensus.

Below represents the basic logic flow for reaching transaction finality.

<figure><img src="/files/bHM0Eto6xM9g0NQNqGEY" alt=""><figcaption></figcaption></figure>

The Bitcoin Spark network is divided loosely into four layers that work in a cyclical system:

1. Execution layer - This layer is where block creation takes place by selecting validators. This execution layer will run using the proprietary Bitcoin Spark validator selection algorithm that does not automatically assign a validator based on transaction size. The execution layer itself will be split between two different programming language style layers that will both interact with the consensus layer.
2. Consensus layer - This layer creates an agreement between all validators that the new block is valid before indexing the block. This consensus process is another step in securing the network from attacks.
3. 'Mining' layer - This layer runs completely separately from other layers, facilitating the processing power product that runs over the Bitcoin Spark network.
4. Rewards layer - This layer reads the mining layer and allocates rewards on the execution layer for miners. The rewards layer only reads computational data summaries and has no access to the encrypted data being moved within the Bitcoin Spark product.

These layers have multiple stacks of functionality within them, but are summarized as above for main layer behavior representation.

These layers all run within the Bitcoin Spark application as separate application services, as opposed to being distinct software.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://bitcoin-spark-foundation.gitbook.io/bitcoin-spark-whitepaper/core-blockchain-function/proof-of-process-transaction-validation.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
