Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Detailed Action
In amendments dated 12/4/25, Applicant amended no claims, canceled no claims, and added no new claims. Claims 1-20 are presented for examination.
Rejections under 35 U.S.C. 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to mental processes without significantly more. Independent claims 1 and 11 each recites determining a set of hash functions for mapping elements in a first data table to a first invertible bloom filter and mapping elements in a second data table to a second invertible bloom filter; generating, using the set of hash functions, the first invertible bloom filter corresponding to the first data table and the second invertible bloom filter corresponding to the second data table; generating a third invertible bloom filter by subtracting the second invertible bloom filter from the first invertible bloom filter, wherein each of the three invertible bloom filters comprises a plurality of indexed cells; identifying a first indexed cell of the third invertible bloom filter, the first indexed cell associated with a first index based on the third invertible bloom filter; computing one or more indices corresponding to the first indexed cell using the set of hash functions; and determining, based on the one or more computed indices, whether the first indexed cell in the third invertible bloom filter is a cell associated with a change between the first data table and the second data table, wherein determining that the first indexed cell is not associated with the change does not use a hashSum of the first indexed cell. Determining a set of hash functions is evaluating and a mental process; generating a bloom filter is applying the hash functions and is a mental process per Personalweb Technologies LLC v. Google 8 F.4th 1310, 2021 U.S.P.Q.2d 853 (Fed. Cir. 2021); generating a bloom filter by subtracting another bloom filter from a first bloom filter is a mathematical calculation; identifying a cell is evaluating and a mental process; computing indices using hash functions is a mental process per Personalweb Technologies LLC v. Google 8 F.4th 1310, 2021 U.S.P.Q.2d 853 (Fed. Cir. 2021); and determining whether a first indexed cell is associated with a change between two tables is evaluating and a mental process. These claims do not recite any additional elements. Claim 11 recites a non-transitory computer readable medium which is a generic component of a computer. Examiner notes specification paragraph 0003 describes the prior art of database synchronization as costly and involving scanning and copying records which may have a high bandwidth consumption, and paragraph 0005 describes how the invention addresses these drawbacks. Not all the steps in paragraph 0005 are claimed and the claims do not recite synchronizing the first and second tables, plus the recited steps do not recite a particular improvement in any technology or function of a computer per MPEP 2106.04(d) and do not recite any unconventional steps in the invention per MPEP 2106.05(a). Therefore, the recited mental processes are not integrated into a practical application. Taking the claims as a whole, the claims still recite no additional elements and the non-transitory computer readable medium is still a generic computer component. The generating and determining steps are recited broadly. Thus the claims do not include additional elements that are sufficient to amount to significantly more than the recited mental processes.
Claims 2 and 12 each recites determining a second total count of elements in a second indexed cell of the third invertible bloom filter, the second indexed cell associated with a second index (determining a count of elements is evaluating and a mental process); and responsive to the second total count of elements being equal to a pre-determined value, determining that the second indexed cell in the third invertible bloom filter is not associated with the change between the first invertible bloom filter and the second invertible bloom filter (determining a cell is not associated with a change is also evaluating and a mental process). Claims 3 and 13 each recites identifying the change by decoding the third invertible bloom filter (decoding a bloom filter is routine and conventional per Dirac et al (US 10,970,629 columns 7-8 lines 65-6) and Zhang et al (US 20200387491 paragraph 0029). Claims 4 and 14 each recites determining a second total count of elements in a second indexed cell of the third invertible bloom filter, the second indexed cell associated with a second index (determining a count is evaluating and a mental process); responsive to the second total count of elements being equal to a pre-determined value, reading a second sum of elements in the second indexed cell (reading a sum of elements is recited broadly and amounts to receiving data across a network per specification paragraphs 0020-021 and figure 1); computing one or more indices corresponding to the determined second sum of elements (computing indices is computing data and a mental process accomplishable in the human mind or on paper); comparing the second index with each computed index corresponding to the determined second sum of elements (comparing indexes is comparing data and a mental process); and responsive to the second index matching one of the computed indices corresponding to the second sum of elements, determining the second indexed cell in the third invertible bloom filter as a candidate cell associated with the change between the first invertible bloom filter and the second invertible bloom filter (determining that a cell is associated with a change between filters is evaluating and a mental process).
Claims 5 and 15 each recites determining a third total count of elements in a third indexed cell of the third invertible bloom filter, the third indexed cell associated with a third index (determining a count is evaluating and a mental process); determining that the second indexed cell is identical to the third indexed cell except that the second total count of elements has an opposite value of the third total count of elements (determining that cells are identical is evaluating and a mental process); and determining that the second indexed cell is not a cell associated with the change between the first invertible bloom filter and the second invertible bloom filter (determining that a cell is not associated with a change between filters is evaluating and a mental process). Claims 6 and 16 each recites determining one or more indexed cells of the third invertible bloom filter, each of the one or more indexed cells associated with one of the computed indices corresponding to the determined second sum of elements (determining a cell is evaluating and a mental process); reading a total count of elements and a sum of elements in each determined indexed cells (reading a count is recited broadly and amounts to receiving data across a network per specification paragraphs 0020-021 and figure 1); and responsive to both of the total count of elements and the sum of elements of one determined indexed cell being equal to zero, determining that the second indexed cell is not a cell associated with the change between the first invertible bloom filter and the second invertible bloom filter (determining that a cell is not associated with a change between bloom filters is evaluating and a mental process).
Claims 7 and 17 each recites decoding the first and second invertible bloom filters using the set of hash functions to obtain the first and second data tables (decoding bloom filters using hash functions is routine and conventional per Dirac et al (US 10,970,629 columns 7-8 lines 65-6) and Zhang et al (US 20200387491 paragraph 0029); determining whether the first and second data tables comprise an element corresponding to the second sum of elements (determining if tables comprise an element is evaluating and a mental process); and responsive to neither of the first and second data tables comprising the element corresponding to the second sum of elements, determining that the second indexed cell is not a cell associated with the change between the first invertible bloom filter and the second invertible bloom filter (determining that a cell is not associated with a change between bloom filters is evaluating and a mental process). Claims 8 and 18 each recites decoding the first and second invertible bloom filters using the set of hash functions to obtain the first and second data tables (decoding bloom filters using hash functions is routine and conventional per Dirac et al (US 10,970,629 columns 7-8 lines 65-6) and Zhang et al (US 20200387491 paragraph 0029); determining whether the first and second data tables comprise an element corresponding to the second sum of elements (determining if tables comprise an element is evaluating and a mental process); and responsive to both of the first and second data tables comprising the element corresponding to the second sum of elements, determining that the second indexed cell is associated with the change between the first invertible bloom filter and the second invertible bloom filter (determining that a cell is associated with a change between bloom filters is evaluating and a mental process).
Claims 9 and 19 each recites wherein each indexed cell of each invertible bloom filter comprises: an index, sum of elements mapped to the respective index, and total count of elements mapped to the respective index (a cell comprising data is a mental process accomplishable in the human mind or on paper). Claims 10 and 20 each recites synchronizing the second data table with the first data table based on the determined cell associated with the change between the first data table and the second data table (synchronizing tables means keeping or storing records between tables in a consistent fashion and is recited broadly and amounts to storing data which is routine and conventional activity per the list of said activities in MPEP 2106.05(d) part II).
Relevant Prior Art
During his search for prior art, Examiner found the following references to be relevant to Applicant's claimed invention. Each reference is listed on the Notice of References form included in this office action:
Rubin et al (US 20170068727) teaches adding and removing data from a Bloom filter such as when entries are added to a database, does not teach a third bloom filter by subtracting a second bloom filter from a first bloom filter or determining whether an indexed cell in a bloom filter is associated with a change between data tables (paragraphs 0015, 0049-0055 figure 5); and
Li (CN 111625540) teaches integrity checking for a database synchronization by calculating hash values of data in a source and target databases and comparing the hash values, does not teach a third bloom filter by subtracting a second bloom filter from a first bloom filter or determining whether an indexed cell in a bloom filter is associated with a change between data tables (abstract).
Responses to Applicant’s Remarks
Regarding rejections of claims 1-9 and 11-19 for Obviousness Type Double Patenting over claims 1-18 of U.S. Patent 12,189,592 in view of Bortnikov, in view of Applicant filing a Terminal Disclaimer on 12/4/25 and the Office approving said Terminal Disclaimer also on 12/4/25, these rejections are withdrawn. Regarding rejections of claims 1-20 under 35 U.S.C. 101 for reciting mental processes without significantly more, Applicant’s arguments have been considered but are not persuasive. On page 12 oh Applicant’s Remarks, Applicant discusses Ex Parte Desjardins and asserts “applicant's specification describes a technical problem of computational resource inefficiency in bloated data sync elements, resulting high bandwidth consumption. See e.g., [0003] and [0054].” Examiner notes the technical solution recited in the claims lacks inventive details that may show an improvement to the technical problem of bandwidth consumption. As stated in the 12/4/25 Kim memo on Ex Parte Desjardins, “claims to a method of training a machine learning model were directed to improvements in the machine learning technology itself and additionally included data structure elements reciting adjustments in values to plurality of performance parameters while preserving prior values.” While the instant claims recite that using a hashSum is avoided, these claims do not recite specific details on the improvements in the invention showing such in paragraphs 0005 and 0053-0054 regarding the data synchronization performed and how or why the hashSum is avoided.
Conclusion
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Inquiry
Any inquiry concerning this communication or earlier communications from the examiner should be directed to BRUCE M MOSER whose telephone number is (571)270-1718. The examiner can normally be reached M-F 9a-5p.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Boris Gorney can be reached at 571 270-5626. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/BRUCE M MOSER/Primary Examiner, Art Unit 2154 3/12/26