# How much time is given to submit a proof in 3g?

**URL:** <https://forum.autonomys.xyz/t/how-much-time-is-given-to-submit-a-proof-in-3g/2139>\
**Category:** Support\
**Created:** [November 9, 2023, 3:57am UTC](https://forum.autonomys.xyz/t/how-much-time-is-given-to-submit-a-proof-in-3g/2139 "2023-11-09T03:57:40Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![dragonP](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.autonomys.xyz/dragonp/32/716_2.png) [@dragonP](https://forum.autonomys.xyz/u/dragonP)\
**Post date:** [November 9, 2023, 3:57am UTC](https://forum.autonomys.xyz/t/how-much-time-is-given-to-submit-a-proof-in-3g/2139/1 "2023-11-09T03:57:40Z")

</div>

Can team advise the total time given in 3g to submit a proof? I understand it’s 750ms for 3f, but given diff is 8x higher in 3g, what is time given for 3g?

---

<div class="post-metadata">

**Author:** ![nazar-pc](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.autonomys.xyz/nazar-pc/32/6_2.png) [@nazar-pc](https://forum.autonomys.xyz/u/nazar-pc)\
**Post date:** [November 9, 2023, 3:59pm UTC](https://forum.autonomys.xyz/t/how-much-time-is-given-to-submit-a-proof-in-3g/2139/2 "2023-11-09T15:59:24Z")

</div>

Proof of time specification has `BLOCK_AUTHORING_DELAY` parameter set to 4 slots, which is ~4 seconds. This means farmer who produced a solution will have to wait 4 more slots before they can actually send it to the network.

This delay reduces performance difference between farmers since it no longer matters how quickly farmer can produce a solution, as long as it is less than 4 seconds, it is good enough and will make no difference.

For 3f farmer had ~750ms to audit, prove and propose (primarily sign) a block. In 3g farmer has 4 seconds to audit and prove, proposing is still ~750ms, but farmer does less work there now.

---

<div class="post-metadata">

**Author:** ![dragonP](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.autonomys.xyz/dragonp/32/716_2.png) [@dragonP](https://forum.autonomys.xyz/u/dragonP)\
**Post date:** [November 10, 2023, 5:29am UTC](https://forum.autonomys.xyz/t/how-much-time-is-given-to-submit-a-proof-in-3g/2139/3 "2023-11-10T05:29:50Z")

</div>

Thank you very much. So am I understanding correctly that:

Audit, provide and propose (primarily sign): must be done within 750ms  
Produce a solution: must be done within 4s

This rule is applied for both block reward and vote reward? Reason I ask is that I’m not really sure if a farmer has to produce/submit a solution in case of only a vote reward (lower diff).

thanks.

---

<div class="post-metadata">

**Author:** ![nazar-pc](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.autonomys.xyz/nazar-pc/32/6_2.png) [@nazar-pc](https://forum.autonomys.xyz/u/nazar-pc)\
**Post date:** [November 10, 2023, 8:38am UTC](https://forum.autonomys.xyz/t/how-much-time-is-given-to-submit-a-proof-in-3g/2139/4 "2023-11-10T08:38:51Z")

</div>

> [@dragonP](#):
>
> Audit, provide and propose (primarily sign): must be done within 750ms  
> Produce a solution: must be done within 4s

No, I literally wrote the opposite in last message.

> [@dragonP](#):
>
> This rule is applied for both block reward and vote reward?

Yes.

> [@dragonP](#):
>
> Reason I ask is that I’m not really sure if a farmer has to produce/submit a solution in case of only a vote reward (lower diff).

If they don’t produce a solution, how does the on-chain logic verify if they won?

---

<div class="post-metadata">

**Author:** ![dragonP](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.autonomys.xyz/dragonp/32/716_2.png) [@dragonP](https://forum.autonomys.xyz/u/dragonP)\
**Post date:** [November 10, 2023, 1:49pm UTC](https://forum.autonomys.xyz/t/how-much-time-is-given-to-submit-a-proof-in-3g/2139/5 "2023-11-10T13:49:05Z")

</div>

Sorry but your paragraph here confuse me

> [@nazar-pc](#):
>
> In 3g farmer has 4 seconds to audit and prove, proposing is still ~750ms, but farmer does less work there now.

I now understand that the proof fetch is given 4s in 3g (given only 750ms in 3f). If audit is not done across all the plots within 750ms, how can the farmer propose within 750ms?

My understanding now is it has 2 phases:

1. Audit and propose (only primarily sign, i.e. notifying the network that farmer has the proof): ASAP and within 750ms (otherwise it’ll be considered as late/invalid)
2. Proof producing: will be sent at 4th slot, i.e. max. 4s can be used to fetch proof

Is that accurate now?

---

<div class="post-metadata">

**Author:** ![nazar-pc](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.autonomys.xyz/nazar-pc/32/6_2.png) [@nazar-pc](https://forum.autonomys.xyz/u/nazar-pc)\
**Post date:** [November 10, 2023, 2:08pm UTC](https://forum.autonomys.xyz/t/how-much-time-is-given-to-submit-a-proof-in-3g/2139/6 "2023-11-10T14:08:16Z")

</div>

> [@dragonP](#):
>
> Is that accurate now?

No, you reordered them randomly comparing to what I wrote and what actually happens in reality.

I wrote “audit and prove” because those are two things that are happening on the farmer first:

- farmer audits plots for solution candidates
- for each candidate it’ll try to generate proofs and if proof generation succeeded it will be sent to node in the form of a `Solution`

After 4 seconds all the `Solution`s that were collected from all farmers are used to propose a new block or submit corresponding votes as unsigned extrinsics depending on solution quality.

---

<div class="post-metadata">

**Author:** ![dragonP](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.autonomys.xyz/dragonp/32/716_2.png) [@dragonP](https://forum.autonomys.xyz/u/dragonP)\
**Post date:** [November 10, 2023, 3:38pm UTC](https://forum.autonomys.xyz/t/how-much-time-is-given-to-submit-a-proof-in-3g/2139/7 "2023-11-10T15:38:27Z")

</div>

Thanks, and the given time is below, correct?

- farmer audits plots for solution candidates: 750ms
- for each candidate it’ll try to generate proofs and if proof generation succeeded it will be sent to node in the form of a `Solution`: 4s

One more question on this topic. If a farmer has more than one eligible solution candidates, will it try to generate proofs for all? Or it only picks up the best ‘solution candidate’ and generate proof for that one?

---

<div class="post-metadata">

**Author:** ![nazar-pc](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.autonomys.xyz/nazar-pc/32/6_2.png) [@nazar-pc](https://forum.autonomys.xyz/u/nazar-pc)\
**Post date:** [November 10, 2023, 3:57pm UTC](https://forum.autonomys.xyz/t/how-much-time-is-given-to-submit-a-proof-in-3g/2139/8 "2023-11-10T15:57:07Z")

</div>

> [@dragonP](#):
>
> Thanks, and the given time is below, correct?

Absolutely not, you turned it upside down again. Please read this carefully:

> [@nazar-pc](#):
>
> For 3f farmer had ~750ms to audit, prove and propose (primarily sign) a block. In 3g farmer has 4 seconds to audit and prove, proposing is still ~750ms, but farmer does less work there now.

> [@dragonP](#):
>
> One more question on this topic. If a farmer has more than one eligible solution candidates, will it try to generate proofs for all? Or it only picks up the best ‘solution candidate’ and generate proof for that one?

It will try to prove all, in the order of decreasing quality.

---

<div class="post-metadata">

**Author:** ![dragonP](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.autonomys.xyz/dragonp/32/716_2.png) [@dragonP](https://forum.autonomys.xyz/u/dragonP)\
**Post date:** [November 10, 2023, 4:17pm UTC](https://forum.autonomys.xyz/t/how-much-time-is-given-to-submit-a-proof-in-3g/2139/9 "2023-11-10T16:17:41Z")

</div>

I’m not sure why it is so difficult to understand. It’s so funny if you know who I am in real life and how many emails and stakeholders I have to deal with across many countries in my daily work.

You said “In 3g farmer has 4 seconds to audit and prove, proposing is still ~750ms, but farmer does less work there now.”.

So “proposing is still 750ms”, where is it in the 2 tasks below?

- farmer audits plots for solution candidates
- for each candidate it’ll try to generate proofs and if proof generation succeeded it will be sent to node in the form of a `Solution`

Thanks again.

---

<div class="post-metadata">

**Author:** ![nazar-pc](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.autonomys.xyz/nazar-pc/32/6_2.png) [@nazar-pc](https://forum.autonomys.xyz/u/nazar-pc)\
**Post date:** [November 10, 2023, 5:08pm UTC](https://forum.autonomys.xyz/t/how-much-time-is-given-to-submit-a-proof-in-3g/2139/10 "2023-11-10T17:08:12Z")

</div>

> [@dragonP](#):
>
> So “proposing is still 750ms”, where is it in the 2 tasks below?

It is a separate step from those two, it happens afterwards.

---

<div class="post-metadata">

**Author:** ![dragonP](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.autonomys.xyz/dragonp/32/716_2.png) [@dragonP](https://forum.autonomys.xyz/u/dragonP)\
**Post date:** [November 10, 2023, 5:53pm UTC](https://forum.autonomys.xyz/t/how-much-time-is-given-to-submit-a-proof-in-3g/2139/11 "2023-11-10T17:53:27Z")

</div>

Thanks. So it’s very little chance to be late in 3g. Only when the plot size is really big, and the eligible sector is at the end of that plot.

---

<div class="post-metadata">

**Author:** ![nazar-pc](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.autonomys.xyz/nazar-pc/32/6_2.png) [@nazar-pc](https://forum.autonomys.xyz/u/nazar-pc)\
**Post date:** [November 10, 2023, 6:03pm UTC](https://forum.autonomys.xyz/t/how-much-time-is-given-to-submit-a-proof-in-3g/2139/12 "2023-11-10T18:03:00Z")

</div>

You shouldn’t have too many solutions on the same machine for that to become an issue in production network anyway. And quad-core machine from 2015 is able to audit ~15TiB plot from my testing, 13900K can audit over 100TiB plots, so you shouldn’t really have issues either way unless you’re still plotting.
