Multi-qubit gate Updated +Created
The most common way to construct multi-qubit gates is to use single-qubit gates as part of a controlled quantum gate.
B2 Oxford physics course Updated +Created
www-thphys.physics.ox.ac.uk/people/AndreiStarinets/sr_mt_2022.html (archive) contains 2022 problem sets and notes, well done Mr Andrei Starinets!
Italy Updated +Created
Kosovo Updated +Created
The European Union is a failure Updated +Created
It hasn't achieved anything beyond the Schengen zone.
Related:
Europe cookie law Updated +Created
Nelson-Mandela.jpg analysis Updated +Created
The toplevel transaction is 78f0e6de0ce007f4dd4a09085e649d7e354f70bc7da06d697b167f353f115b8e
Like all AtomSea & EMBII uploads, the data it is encoded as P2FKH.
The full concatenated payload contains the following ASCII characters:
8881a937a437ff6ce83be3a89d77ea88ee12315f37f7ef0dd3742c30eef92dba|396*8881a937a437ff6ce83be3a89d77ea88ee12315f37f7ef0dd3742c30eef92dba
575061146335bd57f2dc132112152d0eeea44cf187ea6a52ac02435a7e5bea44
674c7cc34ea44bb276c6caf76f2b28fa1597380ab6e6a6906076d8f7229ca5b3
8e2642416ad20924b43f51a633fa1c0a5ba8e4a7b631877db1c64540a42081c9
a3084018096b92af04df57b6116e01ff4b7c7e8bd228235ed49e23f4a2817029
39348722b841afa0c5b67e5af10839afe965ed1b24874e89336bea9fa4ef3091
tomSea & EMBII
Output 2 is a change, so it contains no data and has been excluded. Change appear to be randomly placed in the list of output of the uploads, but they can be easily removed because they are the only output with a different value.
The newlines shown above are explicitly encoded as CR LF newlines with characters 0d 0a.
396 is the number of payload bytes between 396*8881a937a437ff6ce83be3a89d77ea88ee12315f37f7ef0dd3742c30eef92dba and the last txid 39348722b841afa0c5b67e5af10839afe965ed1b24874e89336bea9fa4ef3091, including newlines but exclusding the last line.
The last line appears to contain arbitrary data to fill out the 20 byte payload granularity:
  • A is missing from AtomSea
  • there is a NUL character just after EMBII, possibly part of the protocol?
Now let's inspect the transactions linked to from toplevel.
tx 8881a937a437ff6ce83be3a89d77ea88ee12315f37f7ef0dd3742c30eef92dba contains only payloads without any change. It starts with the following UTF-8 string with CR LF spaces;
"396\“There is nothing like returning to a place
 that remains unchanged to find the ways in 
 which you yourself have altered.”
 -Nelson Mandela


Nelson Rolihlahla Mandela was a South African anti-apartheid revolutionary, politician and philanthropist who served as President of South Afrd۽^2c'︨`ica from 1994 to 1999. -Wikipedia

Born: July 18, 1918, Mvezo, South Africa
Died: December 5, 2013
396 is once again the number of payload bytes present in that string.
This is immediately followed without any separator by a filename, and another size marker:
Nelson-Mandela.jpg?14400/
then followed by all the 14400 - len(Nelson-Mandela.jpg?) + len(/) JPEG bytes bytes, starting with the two JPEG file signature byte "FF D8".
Further toplevel transaction payloads are then simply concatenated with the previous ones, until the last bytes of the image "FF D9" appears at the end of the payload.
00000430  d2 81 de 80 0c 52 f1 40  ea 29 68 03 ff d9 6f 6d  |.....R.@.)h...om|
00000440  53 65 61 20 26 20 45 4d  42 49 49 00              |Sea & EMBII.|
padded once again by an AtomSea & EMBII string fragment terminated by a NUL character.
Geography of Europe Updated +Created
Western World Updated +Created
Cretaceous-Paleogene extinction event Updated +Created
Functional Analysis II course of the University of Oxford Updated +Created
Era Updated +Created
Period (geology) Updated +Created
List of mines Updated +Created
Iran Updated +Created
Israel Updated +Created
What they are doing to the Palestinians is a tremendous injustice. Either give them citizenship, or give them a country.
The fact that the United States supports this is an incurable black mark in their moral standing that will not be forgotten for a very long time.
Turkey Updated +Created
Adolf Hitler Updated +Created
Climate of the United Kingdom Updated +Created
British weather is not as bad as the stereotype, at least not in the southern half of the country.
Notably, it does not rain that much, and when it rains, it is a very light rain, which Brazilians from São Paulo or , at most, a "drizzle".
It feels like the weather forecasts are almost always worse than reality, maybe it is a way to not make people disappointed.
What there is relatively a lot of is wind, and fog. But the wind is generally warm and wet, it is very maritime.
This example is similar to nodejs/sequelize/raw/parallel_update_async.js, but now we are doing a separate SELECT, later followed by an update:
  • SELECT FROM to get i
  • update on Js code newI = i + 1
  • UPDATE SET the newI
Although this specific example is useless in itself, as we could just use UPDATE "MyInt" SET i = i + 1 as in nodejs/sequelize/raw/parallel_update_async.js, which automatically solves any concurrency issue, this kind of code could be required for example if the update was a complex function not suitably implemented in SQL, or if the update depends on some external data source.
Sample execution:
node --unhandled-rejections=strict ./parallel_select_and_update.js p 2 10 'READ COMMITTED'
which does:
Another one:
node --unhandled-rejections=strict ./parallel_select_and_update.js p 2 10 'READ COMMITTED' 'FOR UPDATE'
this will run SELECT FOR UPDATE rather than just SELECT
Observed behaviour under different SQL transaction isolation levels:
  • READ COMMITTED: fails. Nothing in this case prevents:
    • thread 1: SELECT, obtains i = 0
    • thread 2: SELECT, obtains i = 0
    • thread 2: newI = 1
    • thread 2: UPDATE i = 1
    • thread 1: newI = 1
    • thread 1: UPDATE i = 1
  • REPEATABLE READ: works. the manual mentions that if multiple concurrent updates would happen, only the first commit succeeds, and the following ones fail and rollback and retry, therefore preventing the loss of an update.
  • READ COMMITTED + SELECT FOR UPDATE: works. And does not do rollbacks, which probably makes it faster. With p 10 100, REPEATABLE READ was about 4.2s and READ COMMITTED + SELECT FOR UPDATE 3.2s on Lenovo ThinkPad P51 (2017).
    SELECT FOR UPDATE should be enough as mentioned at: www.postgresql.org/docs/13/explicit-locking.html#LOCKING-ROWS
    FOR UPDATE causes the rows retrieved by the SELECT statement to be locked as though for update. This prevents them from being locked, modified or deleted by other transactions until the current transaction ends. That is, other transactions that attempt UPDATE, DELETE, SELECT FOR UPDATE, SELECT FOR NO KEY UPDATE, SELECT FOR SHARE or SELECT FOR KEY SHARE of these rows will be blocked until the current transaction ends; conversely, SELECT FOR UPDATE will wait for a concurrent transaction that has run any of those commands on the same row, and will then lock and return the updated row (or no row, if the row was deleted). Within a REPEATABLE READ or SERIALIZABLE transaction, however, an error will be thrown if a row to be locked has changed since the transaction started. For further discussion see Section 13.4.
A non-raw version of this example can be seen at: nodejs/sequelize/parallel_select_and_update.js.

Unlisted articles are being shown, click here to show only listed articles.