The origin: https://bitcoin.org/bitcoin.pdf local
Double spending, really N-spending, as if the same "coin" can be spent twice, it could be spend any number of times.
"The only way to confirm the absence of a transaction is to be aware of all transactions."
Each full node downloads the entire block chain history.
Timestamp, it's the date and time at which a one way hash of some number of blocks is published. The "block chain" is the chain of these hashes, in the order they were published. The publication order is defined per a quorum of the majority (51%) of the bitcoin network.
"The timestamp proves that the data must have existed at the time, obviously, in order to get into the hash. Each timestamp includes the previous timestamp in its hash, forming a chain, with each additional timestamp reinforcing the ones before it."
"To implement a distributed timestamp server on a peer-to-peer basis, we will need to use a proof- of-work system..."
"Proof-of-work is essentially one-CPU-one-vote. The majority decision is represented by the longest chain, which has the greatest proof-of-work effort invested in it. If a majority of CPU power is controlled by honest nodes, the honest chain will grow the fastest and outpace any competing chains. To modify a past block, an attacker would have to redo the proof-of-work of the block and all blocks after it and then catch up with and surpass the work of the honest nodes."
Transactions are not reversible. All transactions are known to all peers. Only the bitcoin sender and receiver addresses (hashes of public keys) are known. So anonymity is possible.