IP Library › Granted Patent US 11,676,059
Granted Patent B2
US 11,676,059 · App. 16/909,477 · Granted Jun 13, 2023

Performing quantum file pattern searching

Inventors: Leigh Griffin (Waterford, IE); Stephen Coady (Waterford, IE)
Assignee: Red Hat, Inc.
G06N10/00G06F18/22
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,676,059
App. No.
16/909,477
Granted
Jun 13, 2023
Kind
B2
Abstract

Performing quantum file pattern searching is disclosed herein. In one example, a quantum search service executing on a quantum computing device receives, from a requestor, a search request including a search pattern. Upon receiving the search request, the quantum search service accesses a quantum file registry of a quantum file that includes a plurality of qubits. Based on the quantum file registry record, the quantum search service identifies the plurality of qubits, as well as the locations of each qubit of the plurality of qubits. The quantum search service then accesses a plurality of data values stored by the plurality of qubits, and compares the data values to the search pattern. If the quantum search service determines that one or more data values of the plurality of data values correspond to the search pattern, the quantum search service sends to the requestor a search response indicating a match.

Claims (71)

1. A method comprising:

receiving, from a requestor, a search request comprising a search pattern;

accessing a quantum file registry record of a quantum file comprising a plurality of qubits;

identifying, based on the quantum file registry record, the plurality of qubits and a location of each qubit of the plurality of qubits;

accessing, based on the identifying, a plurality of data values stored by the plurality of qubits;

comparing the plurality of data values with the search pattern;

determining, based on the comparing, that one or more data values of the plurality of data values correspond to the search pattern; and

sending a search response to the requestor indicating that the one or more data values of the plurality of data values correspond to the search pattern.

2. The method of claim 1 , wherein the search request further comprises one or more of an identification of the quantum file to be searched, an identification of one or more locations to be searched, and an identification of the plurality of qubits to be searched.

3. The method of claim 1 , wherein the search response comprises one or more of an identification of the quantum file and an identification of one or more qubits of the plurality of qubits that store the one or more data values corresponding to the search pattern.

4. The method of claim 1 , wherein:

the search pattern comprises one or more literals; and

determining that the one or more data values of the plurality of data values correspond to the search pattern comprises determining that each data value of the one or more data values equals a corresponding literal of the one or more literals.

5. The method of claim 1 , wherein:

the search pattern comprises a regular expression; and

determining that the one or more data values of the plurality of data values correspond to the search pattern comprises determining that the one or more data values match the regular expression.

6. The method of claim 1 , further comprising obtaining exclusive access to the plurality of qubits.

7. The method of claim 1 , further comprising determining that each qubit of the plurality of qubits is in an entanglement state of not entangled;

wherein accessing the plurality of data values stored by the plurality of qubits is responsive to determining that each qubit of the plurality of qubits is in an entanglement state of not entangled.

8. The method of claim 1 , further comprising determining that any qubit of the plurality of qubits is in a state of superposition;

wherein:

accessing the plurality of data values stored by the plurality of qubits comprises performing a plurality of accesses of each data value of the plurality of data values;

comparing the plurality of data values with the search pattern comprises performing a plurality of comparisons of the plurality of data values with the search pattern; and

determining that the one or more data values of the plurality of data values correspond to the search pattern comprises:

determining a number of the plurality of comparisons in which the one or more data values of the plurality of data values match the search pattern; and

determining that the number of the plurality of comparisons exceeds a comparison threshold.

9. The method of claim 1 , further comprising determining that each qubit of the plurality of qubits is not in a state of superposition;

wherein accessing the plurality of data values stored by the plurality of qubits is responsive to determining that each source qubit of the plurality of source qubits is not in a state of superposition.

10. The method of claim 1 wherein the search request identifies a quantum file of a plurality of quantum files, and further comprising:

determining, based on the search request, the quantum file registry record of a plurality of quantum file registry records maintained in a quantum file registry, each quantum file registry record corresponding to a different quantum file, each different quantum file comprising one or more qubits.

11. A quantum computing system, comprising:

a quantum computing device comprising:

a memory; and

at least one processor device coupled to the memory to:

receive, from a requestor, a search request comprising a search pattern;

access a quantum file registry record of a quantum file comprising a plurality of qubits;

identify, based on the quantum file registry record, the plurality of qubits and a location of each qubit of the plurality of qubits;

access, based on the identifying, a plurality of data values stored by the plurality of qubits;

compare the plurality of data values with the search pattern;

determine, based on the comparing, that one or more data values of the plurality of data values correspond to the search pattern; and

send a search response to the requestor indicating that the one or more data values of the plurality of data values correspond to the search pattern.

12. The method of claim 11 , wherein the search request further comprises one or more of an identification of the quantum file to be searched, an identification of one or more locations to be searched, and an identification of the plurality of qubits to be searched.

13. The method of claim 11 , wherein the search response comprises one or more of an identification of the quantum file and an identification of one or more qubits of the plurality of qubits that store the one or more data values corresponding to the search pattern.

14. The quantum computing system of claim 11 , wherein:

the search pattern comprises one or more literals; and

to determine that the one or more data values of the plurality of data values correspond to the search pattern is to determine that each data value of the one or more data values equals a corresponding literal of the one or more literals.

15. The quantum computing system of claim 11 , wherein:

the search pattern comprises a regular expression; and

to determine that the one or more data values of the plurality of data values correspond to the search pattern is to determine that the one or more data values match the regular expression.

16. The quantum computing system of claim 11 , wherein the at least one processor device is further to obtain exclusive access to the plurality of qubits.

17. The quantum computing system of claim 11 , wherein:

the at least one processor device is further to determine that each qubit of the plurality of qubits is in an entanglement state of not entangled; and

the at least one processor device is to access the plurality of data values stored by the plurality of qubits responsive to determining that each qubit of the plurality of qubits is in an entanglement state of not entangled.

18. The quantum computing system of claim 11 , wherein:

the at least one processor device is further to determine that any qubit of the plurality of qubits is in a state of superposition;

to access the plurality of data values stored by the plurality of qubits is to perform a plurality of accesses of each data value of the plurality of data values;

to compare the plurality of data values with the search pattern is to perform a plurality of comparisons of the plurality of data values with the search pattern; and

to determine that the one or more data values of the plurality of data values correspond to the search pattern is to:

determine a number of the plurality of comparisons in which the one or more data values of the plurality of data values match the search pattern; and

determine that the number of the plurality of comparisons exceeds a comparison threshold.

19. The quantum computing system of claim 11 , wherein:

the at least one processor device is further to determine that each qubit of the plurality of qubits is not in a state of superposition; and

the at least one processor device is to access the plurality of data values stored by the plurality of qubits responsive to determining that each source qubit of the plurality of source qubits is not in a state of superposition.

20. A computer program product comprising a non-transitory computer-readable medium having stored thereon computer-executable instructions which, when executed, cause a processor device to:

receive, from a requestor, a search request comprising a search pattern;

access a quantum file registry record of a quantum file comprising a plurality of qubits;

identify, based on the quantum file registry record, the plurality of qubits and a location of each qubit of the plurality of qubits;

access, based on the identifying, a plurality of data values stored by the plurality of qubits;

compare the plurality of data values with the search pattern;

determine, based on the comparing, that one or more data values of the plurality of data values correspond to the search pattern; and

send a search response to the requestor indicating that the one or more data values of the plurality of data values correspond to the search pattern.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2020
From: GRIFFIN, LEIGH; COADY, STEPHEN
To: RED HAT, INC.
Reel/Frame 053015/0934 →
Continuity (1)
Related Publication 20210398008A1 · Dec 23, 2021