How does betting on a block work in Casper?

Betting on a block is betting money that effectively says something like:

"I believe that this block has at least a 60% chance of being true."

Q1. Once a bet is made, is it possible to change the bet?

My guess is not, so that initially validators should bet small and eventually they all converge and agree. (Part of Casper is proving this convergence?)

Q2. If a validator has a deposit of 100 ETH (for example), when they make a 10% bet do they put 10 ETH at risk?

Q3. If so, what happens if a validator realizes a mistake and wants to switch and bet 100% on another block? Presumably the 10 ETH will be lost leaving the validator with 90 ETH left for betting. Is that correct or does the validator need to put up another 10 ETH deposit? To bet 100% on another block, does the validator put 90 ETH or 100 ETH at risk?

Q1. Yes, validators can change their bet. Voting happens on every block, and validators can vote however they want. From Vlad:

Validators bet independently on blocks at every height (i.e. block number) by assigning it a probability and publishing it as a bet. Through iterative betting, the validators elect exactly one block at every height

Q2. You are correct. Validators are incentivised to make high bets and agree as fast as possible because their reward will decrease over time.

Q3. I don't think details on this have been decided yet, but the validator can reassign all 10 ether to another block if they want. This has to be allowed to prove that the system eventually converges. To discourage validators from rapidly switching high bets between blocks and promote finality, from Vlad:

Moreover, if validators change their bets too dramatically, for example by voting with a high probability on one block after voting with a very high probability on another, then they are severely punished.

I'm not sure about 1) but I guess it's not possible.

About 2) and 3), referring to this post, and specifically the So how does Casper work anyway? part, it seems that you bet using a Casper contract that keeps track of 6 items, one of them being :

The current size of the validator’s deposit (note that the bets that the validator makes will increase or decrease this value)

This would be a yes to your #2 question if I'm not mistaken and understand correctly.

For 3), I couldn't finda reference or answer, but maybe that quote answers it partially:

In order to prevent validators from providing different bets to different universes, we have a simple slashing condition: if you make two bets with the same sequence number, or even if you make a bet that you cannot get the Casper contract to process, you lose your entire deposit.

• Losing all when placing 2 bets for same block ? My question how does Casper handle if a genuine block maker goes down may be power surge comes back up and he/she has placed a bet during their offline ?
– NaN
Commented Oct 29, 2017 at 9:52