Databases are used in various computing systems to store transactional information. The main operations conducted on databases include insert operations, update operations, delete operations, and search operations. Currently, there is no effective systems that can provide such operations for databases associated with quantum computing systems.
The following detailed description refers to the accompanying drawings. The same reference numbers in different drawings may identify the same or similar elements.
Systems, devices, and/or methods described herein may provide for one or more quantum circuit systems that provided for database delete operations. In embodiments, a particular quantum circuit may be a delete circuit which performs delete record(es) operations in quantum databases (QDBs) based on input criteria with complexity O(1) without violating the No-deleting Theorem. In embodiments, the particular quantum circuit may be used to delete specific data (states) from a uniform/weighted superposition QDB. In embodiments, the operation speed of the particular circuit is exponentially increased compared to previous systems.
Accordingly, the systems, devices, and/or methods described herein can be used to delete a greater amount of data into a quantum database system, which cannot be achieved using non-quantum computers or other systems. In embodiments, the one or more quantum circuits provide for a more efficient deletion of information from one or more databases and can overcome issues of requiring more time associated with non-quantum systems. In embodiments, the delete operation may have a database system that is integrated with AI (artificial intelligence)/quantum-AI and information systems. Grover's algorithm, which is a quantum search algorithm, that reduces the search process within a database system to be O(N1/2) (where N is the number of items database, compared with traditional algorithms that need O(N). Thus, quantum computers have a significantly greater speed (such as a quadratic speed) to perform such search operations when compared to a non-quantum computer.
At step 202, quantum circuit 200 initializes the quantum state as |φ0>)=|qr, QDB, cb, s>. In embodiments, the register |qr> is the quantum register which carry the criteria, conditions, to specify quantum data/records/basis states needed to deleted, the register |QDB> carry the quantum database which was stored by the insert circuit operation, |cb> is the control register of size n qubit and |s> is the register which is used in the insert process.
At step 204, the algorithm searches for the quantum database data/record(s) in the register |QDB> that match the criteria specified by the database user/information system application via the register |qr>, where the index of each qubit which its value is defined by the user/completion system is determined in the set h. In embodiments, by applying the S operator between the query register |qr> and the |QDB> register as
In embodiments, the search for the matched records/data/basis states is done by applying the S operator between each qubit has an index in the set h.
At step 206, quantum circuit 200 applies the |h|+1-qubit Toffoli gate with |h| control qubits of the register |QDB> which are have indexes specified by the set h and the target qubit is |s2>. In embodiments, |φ2>=TQDB
In embodiments, at step 206, the Toffli-gate is applied to mark by entanglement the data/records/basis states which match the criteria defined by the register |qr> to delete them in step 5 (step 212) and makes it ready to store a new data/record(s)/basis states in the next insert operation by making the state of |s2> qubit is |1> for deleted states.
At step 208, quantum circuit 200 uses the algorithm to remove the effect of S operator by applying S operator again (by repeating step 202). In embodiments,
At step 210, quantum circuit 200 applies n of 3-qubit Toffoli gates as follows:
In embodiments, at step 210, quantum circuit 200 writes the marked data/record(s)/basis state(s) to the ancillary register |cb> by applying number of n of a 3-qubit Toffoli gate is controlled by the qubit |QDBk>, |s2>, and the target qubit is |cbk> where k=1, 2, . . . , n.
At step 212, quantum circuit 200 applies n of a 3-qubit Toffoli gate as follows:
In embodiments, step 212 deletes the marked data/record(s)/basis state(s) by converting them to the vacuum state |0>⊗n by applying number of n of a 3-qubit Toffoli gate, each gate is controlled by the qubit |cbk>, |s2>, and the target qubit is |QDBk> where k=1, 2, . . . , n. At the end, the marked basis state/states of the register |QDB> is/are leaved in the in the vacuum state |0>⊗n entangled with the qubit |s2> to make the deleted data/record(s)/basis state(s), is/are ready for storing new data/records/basis state(s) in next insert operations.
Accordingly, performance of quantum circuits 200, and 201 is exponentially faster than when compared to traditional algorithms. Also, quantum circuits 200, and 201 can be used to delete a set of data/records/basis states with different values in a superposition at the same time which cannot achieve via traditional computers.
In a non-limiting example, a quantum database is given in the form of:
In embodiments, deletion of a particular set of data is needed to satisfy the criteria |0??1???> which means that the value of the first qubit is |0>, and the value of fourth qubit is |1>. In embodiments, the set h is h={1,4}, hence |h|=2, where | . . . | defines the number of elements.
In this non-limiting example, using the quantum circuit 200, or 201, at step 202, initialize the quantum states as
In this non-limiting example, at step 204, the quantum circuit 200, or 201 applies |h|=2 of S gates as:
In this non-limiting example, at step 206, the quantum circuit 200, or 201 applies the |h|+1-qubit, 3-qubit, Toffoli gate with |h| control qubits of the register |QDB> which are have indexes specified by the set h and the target qubit is |s2>. Thus:
In this non-limiting example, at step 208, the quantum circuit 200, or 201 removes the effect of S operator by applying S operator again between (thus, repeating step 1). Thus:
In this non-limiting example, at step 4 (step 210), quantum circuit 200 applies n=7 of a 3-qubit Toffoli gate as follows:
The at step 5 (step 210), quantum circuit 200 applies n=7 of a 3-qubit Toffoli gate as follows:
In alternate embodiments, the results |φ4>, and |φ5> can be obtained directly by applying at step 4 (step 214), in the quantum circuit 201 instead of applying the step 4 (step 210), and the step 5 (step 212), in the quantum circuit 200.
In this non-limiting example, each two qubits represent an attribute in the quantum database. As shown in
Quantum bus 610 may include a path that permits communications among the components of device 600. Quantum processor 620 may include one or more processors, microprocessors, and/or processing logic (e.g., a field programmable gate array (FPGA), quantum teleportation devices, quantum communication devices, quantum computing circuits, quantum encryption applications and/or an application specific integrated circuit (ASIC) that interprets and executes instructions. Input component 640 may include a mechanism that permits a user to convert classical information to quantum input information to device 600, such as a quantum circuit, a quantum-based application, a keyboard, a keypad, a button, a switch, voice command, etc. Quantum output component 650 may include a mechanism that outputs information and transforms quantum information to classical information to be provided to the user, such as a display, a speaker, one or more light emitting diodes (LEDs), etc.
Quantum communications interface 660 may include any transceiver-like mechanism that enables device 600 to communicate with other devices and/or systems. For example, communications interface 660 may include an Ethernet interface, an optical interface, a coaxial interface, a wireless interface, or the like and quantum-to-classical and vice versa unit.
In another implementation, quantum communications interface 660 may include, for example, a transmitter that may convert baseband signals from quantum processor 620 to radio frequency (RF) signals and/or a receiver that may convert RF signals to baseband signals. Alternatively, communications interface 660 may include a transceiver to perform functions of both a transmitter and a receiver of wireless communications (e.g., radio frequency, infrared, visual optics, quantum wireless, quantum channels, quantum fiber optics, quantum teleportation, quantum communication devices/networks, quantum encryption devices, etc.), wired communications (e.g., conductive wire, twisted pair cable, coaxial cable, transmission line, fiber optic cable, waveguide, single-photon channels, multi-photon channels, etc.), or a combination of wireless and wired communications.
Communications interface 660 may connect to an antenna assembly (not shown in
As will be described in detail below, device 600 may perform certain operations. Device 600 may perform these operations in response to quantum processor 620 executing software instructions (e.g., computer program(s), quantum computing circuit, quantum teleportation, etc.) contained in a computer-readable medium/quantum-based computing, such as quantum memory 630, a secondary storage device (e.g., hard disk, CD-ROM, etc.), or other forms of RAM or ROM. A computer-readable medium may be defined as a non-transitory memory device. A memory device may include space within a single physical memory device or spread across multiple physical memory devices. The software instructions may be read into memory 630 from another computer-readable medium or from another device. The software instructions contained in quantum memory 630 may cause quantum processor 620 to perform processes described herein. Alternatively, hardwired circuitry may be used in place of or in combination with software instructions to implement processes described herein. Thus, implementations described herein are not limited to any specific combination of hardware circuitry and software.
Even though particular combinations of features are recited in the claims and/or disclosed in the specification, these combinations are not intended to limit the disclosure of the possible implementations. In fact, many of these features may be combined in ways not specifically recited in the claims and/or disclosed in the specification. Although each dependent claim listed below may directly depend on only one other claim, the disclosure of the possible implementations includes each dependent claim in combination with every other claim in the claim set.
While various actions are described as selecting, displaying, transferring, sending, receiving, generating, notifying, and storing, it will be understood that these example actions are occurring within an quantum computing, quantum networking, quantum database, quantum computing and/or quantum networking environment and may require one or more computing devices, as described in
No element, act, or instruction used in the present application should be construed as critical or essential unless explicitly described as such. Also, as used herein, the article “a” is intended to include one or more items and may be used interchangeably with “one or more.” Where only one item is intended, the term “one” or similar language is used. Further, the phrase “based on” is intended to mean “based, at least in part, on” unless explicitly stated otherwise.
In the preceding specification, various preferred embodiments have been described with reference to the accompanying drawings. It will, however, be evident that various modifications and changes may be made thereto, and additional embodiments may be implemented, without departing from the broader scope of the invention as set forth in the claims that follow. The specification and drawings are accordingly to be regarded in an illustrative rather than restrictive sense.