- (breaking) Some fields of EntanglerProt were renamed for consistency with other protocols. More such renaming is to be expected, for consistency's sake.
- (breaking) The
StatesZoonow integrates with thegenqopython package, to provide high accuracy models of the ZALM entanglement source. The previous implementation of the ZALM source was removed. - (breaking) Renaming
wait(::MessageBuffer)andonchange_tag(::Register)toonchange. - (fix)
observableused to incorrectly handle subsystem permutations on some backends in some edge cases, giving wrong results. - (fix) Tensor products of operators are now better supported in
apply!forCliffordRepr - Querying functions now also return the time at which a tag was tagged.
query_waitnow exists as a much simpler alternative toonchangefollowed byquery.GraphStateConstructorprotocol and related tooling for modeling of the iterative construction of a graph state out of Bell pairs.- Protocol constructors moving to having constructors that do not require
simto be explicitly specified. - Noise types now have default parameters, for ease of construction in examples. The default values generally correspond to near-zero noise (e.g. decoherence time of
1e9). - Protocols (subtypes of
AbstractProtocolin theProtocolZoo) now have richshowmethods for theimage/pngandtext/htmlMIME types - Unexported function
permits_virtual_edgeto describe whether a protocol can run between two nodes that are not directly connected. - Non-public functions
parent,parentindex,name,namestr,timestr,compactstr,available_protocol_types,available_slot_types,available_background_types,constructor_metadatafor better introspection capabilities and cleaner printing. T1T2noise has been added.
- Add
classical_delayandquantum_delayas keyword arguments to theRegisterNetconstructor to set a default global network edge latency. onchange_tagnow permits a protocol to wait for any change to the tag metadata. Implemented thanks to the newAsymmetricSemaphore, a resource object that allows multiple processes to wait for an update.- Plots of networks can now overlay real-world maps (see
generate_map). - A "state explorer" tool was added to the plotting submodule and as an interactive example, to heal visualize many of the states in StatesZoo.
- Additional filtering and decision capabilities in
EntanglerProt. - Fixes and additions to available background noise processes.
- Rebuilding the ZALM source from StatesZoo in a more reproducible fashion.
- Fixes and performance improvements to
observable. - New examples related to preparing GHZ states and MBQC-based purification.
- The switch protocol is now back to fully functional, thanks to an upstream fix in GraphsMatching.jl.
- Develop
CutoffProtto deal with deadlocks in a simulation - Expand
SwapperProtwithagelimitto permit cutoff policies (withCutoffProt) - Tutorial and interactive examples for entanglement distribution on a grid with local-only knowledge
- (breaking)
observablenow takes a default value as a kwarg, i.e., you need to make the substitutionobservable(regs, obs, 0.0; time)↦observable(regs, obs; something=0.0, time) - Bump QuantumSymbolics and QuantumOpticsBase compat bound and bump julia compat to 1.10.
- Implement a simple switch protocol.
- Simplify one of the switch protocols to avoid dependence on GraphsMatching.jl. which does not install well on non-linux systems. Do not rely on the default
SimpleSwitchDiscreteProtfor the time being.
- Simplify one of the switch protocols to avoid dependence on GraphsMatching.jl. which does not install well on non-linux systems. Do not rely on the default
- Incorrect breaking release. It should have been 0.5 (see above).
- Significant improvements to the performance of
query.
- Establishing
ProtocolZoo,CircuitZoo, andStateZoo - Establishing
Register,RegRef, andRegisterNet - Establishing the symbolic expression capabilities
- Establishing plotting and visualization capabilities