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 .
Continued Examination Under 37 CFR 1.114
A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on 07/24/2026 has been entered.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 1-2, 6, 11-12, and 16 are rejected under 35 U.S.C. 103 as being unpatentable over Kim et al (2020/0311306) in views of Aronovich (2015/0019833) and Thakurta et al (2018/0039619).
For claim 1, Kim teaches An electronic device (abstract, lines 1-2) comprising: a communication circuit (par.22, lines 1-2); memory storing one or more computer programs; one or more processors communicatively coupled to the communication circuit and the memory (Kim teaches that processor configured to be connected to the communicator and the memory to control the electronic device as Kim teaches in par.22), wherein the one or more computer programs include computer-executable instructions that, when executed by the one or more processors individually or collectively (Kim teaches that “application” refers to a set of computer programs designed to perform a specific task as Kim teaches in par.60), cause the electronic device to: obtain data to be transmitted to a server (Kim teaches that data transmitted to an external server as Kim teaches in par.22), insert a fingerprint to the data (Kim teaches that insert a finger print into the data in par.26), segment the fingerprint-inserted data into a first size to generate a plurality of segmented data (Kim teaches that generating a plurality of divided data having a predetermined first size based on the data into which the finger print is inserted; and applying the obfuscation algorithm to selected one of the plurality of divided data using the security parameter as Kim teaches in par.17), so that data in a second size is duplicated between adjacent segmented data among the plurality of segmented data (Kim teaches that generating of the divided data may further include inserting an index from 0 to N−1 into each of the plurality of divided data based on the number of the plurality of divided data, which is N, and divided data adjacent to each other among the plurality of divided data may include duplicate data having a predetermined third size as Kim teaches in par.19), select one segmented data from among the plurality of segmented data based on a preset per-position selection probability for the plurality of segmented data (Kim teaches that selected one of the plurality of divided data using the security parameter and probability of selecting any element among the respective elements may be the same probability and the finger print is insert in position that’s already preset or predefined as Kim teaches in par.17 and 207), and transmit a report generated by obfuscating the selected one segmented data to the server (Kim teaches transmit data to the server as in par.219), wherein the segmented data set including a predetermined number of data among all combinations of per-position segmented data in the first size as elements is predefined (Kim teaches that generating a plurality of divided data having a predetermined first size based on the data into which the finger print is inserted; and applying the obfuscation algorithm to selected one of the plurality of divided data using the security parameter and determine whether or not a hash value that the separated data is applied to the hash function as an input value and the data at the position where the finger print is inserted are the same as Kim teaches par.17 and 228), wherein the selected one segmented data is included in the segmented data set (Kim teaches that the selected one divided data to which the obfuscation algorithm is applied may be transmitted as Kim teaches in par.17).
Kim fails to teach select one segmented data to be obfuscated, the preset per-position selection probability of each segmented data among the plurality of segmented data being set based on a per-position size of a segmented data set configured to differ according to a position of each segmented data, wherein the segmented data set includes some of the plurality of segmented data whose use frequency is larger than or equal to a predetermined value, and wherein the report includes position information indicating where the selected one segmented data is located within the plurality of segmented data.
Aronovich teaches, similar system, the preset per-position selection probability of each segmented data among the plurality of segmented data being set based on a per-position size of a segmented data set configured to differ according to a position of each segmented data (Aronovich teaches computer program product for segmenting data into variable size blocks based on content defined positions. Segmenting probabilities and associated segmenting conditions are defined, The segmenting conditions are ordered in accordance with the associated segmenting probabilities to form a hierarchy of the segmenting conditions. A segmenting condition associated with a highest segmenting probability is defined to be a lowest level segmenting condition in the hierarchy of the segmenting conditions. The segmenting condition associated with a lowest segmenting probability is defined to be a highest level segmenting condition in the hierarchy of the segmenting conditions and the result of these dependencies is that different high level partitions of the data can cause a segmentation method to produce different segmentations for the same data as Aronovich as teaches in abstract and par.21). It would have been obvious to one ordinary skill in the art before effective filling date to modify Kim based on a per-position size of a segmented data set configured to differ according to a position of each segmented data as taught and suggested by Aronovich for the purpose of improving of reducing deduplication effectiveness, and can be prohibitive for large scale deduplication systems (Aronovich, par.21).
Thakurta teaches, similar system, select one segmented data to be obfuscated (Thakurta teaches that the sampled word can be segmented into n-grams, an n-gram can be selected from the n-grams and processed using local differential privacy, then transmitted to a server. N-grams can be selected to be a particular length, such as 1 character (one-gram), 2 characters (bi-gram), etc. Throughout the disclosure, the term “n-gram” is used to generically refer to a sequence of characters having a specified length for a process. In an embodiment, a length of 2 is selected (bi-gram) to reduce search space complexity as Thakurta teaches in par.11), wherein the segmented data set includes some of the plurality of segmented data whose use frequency is larger than or equal to a predetermined value (Thakurta teaches that Learn new terms job 260 can periodically process the received, de-identified, and classify sketch data received from the large plurality of client devices 110. Learn new terms job 260 can include operations that include accumulating frequencies of received n-grams, generating permutations of n-grams, trimming the permutations of n-grams, and determining candidate new words from the permutations of n-grams. Learn new terms job 260 can also update asset catalog 275 to generate asset catalog update with updated frequencies of known words as Thakurta teaches in par.46, 71, 107 and 111), and wherein the report includes position information indicating where the selected one segmented data is located within the plurality of segmented data (Thakurta teaches that selected differentially private n-gram of the word to term learning server 130, along with selected n-gram position data, and class information of the new word, Each of the n-gram sketches at a position can be partitioned into groups having the same puzzle piece (PP) value. The puzzle piece signifies an n-gram sketch at a position that belongs with an n-gram sketch at another position based on the n-gram sketches having been obtained from the same word having the same puzzle piece value. The histogram of frequencies of n-gram sketches at positions, generated in FIG. 6 operation 632, can be partitioned into puzzle piece groups of n-gram sketches. The histogram can be grouped as ordered pairs of (n-gram sketch, puzzle piece), each having a frequency par.67 and 98-100 and 111). It would have been obvious to one ordinary skill in the art before effective filling date to modify Kim with select one segmented data to be obfuscated and segmented data whose use frequency is larger than or equal to a predetermined value as taught and suggested by Thakurta for the purpose of determining whether the amount of randomization in the differentially private data is sufficient to maintain differential privacy of client data (Thakurta, par.11).
For claims 2 and 12, Kim, as modified by Thakurta and Aronovich, further teaches wherein the second size is set to a value smaller than the first size (par.18).
For claims 6 and 16, Kim, as modified by Thakurta and Aronovich, further teaches wherein the one or more computer programs include computer-executable instructions that, when executed by the one or more processors individually or collectively (Kim teaches that “application” refers to a set of computer programs designed to perform a specific task as Kim teaches in par.60), cause the electronic device to: pad the data and insert the fingerprint so that a size of the data is a third size when the data is smaller than the third size (par.108); and truncate the data and insert the fingerprint so that the size of the data is the third size when the data is larger than the third size (par.108).
For claim 11, Kim teaches A method performed by an electronic device (abstract), the method comprising: obtaining, by the electronic device, data to be transmitted to a server (Kim teaches that data transmitted to an external server as Kim teaches in par.22); inserting, by the electronic device, a fingerprint to the data (Kim teaches that insert a finger print into the data in par.26); segmenting, by the electronic device, the fingerprint-inserted data into a first size to generate a plurality of segmented data (Kim teaches that generating a plurality of divided data having a predetermined first size based on the data into which the finger print is inserted; and applying the obfuscation algorithm to selected one of the plurality of divided data using the security parameter as Kim teaches in par.17), so that data in a second size is duplicated between adjacent segmented data among the plurality of segmented data (Kim teaches that generating of the divided data may further include inserting an index from 0 to N−1 into each of the plurality of divided data based on the number of the plurality of divided data, which is N, and divided data adjacent to each other among the plurality of divided data may include duplicate data having a predetermined third size as Kim teaches in par.19); selecting, by the electronic device, one segmented data from among the plurality of segmented data based on a preset per-position selection probability for the plurality of segmented data (Kim teaches that selected one of the plurality of divided data using the security parameter and probability of selecting any element among the respective elements may be the same probability as Kim teaches in par.17 and 207); and transmitting a report generated by obfuscating the selected one segmented data to the server (Kim teaches transmit data to the server as in par.219), wherein the segmented data set including a predetermined number of data among all combinations of per-position segmented data in the first size as elements is predefined (Kim teaches that generating a plurality of divided data having a predetermined first size based on the data into which the finger print is inserted; and applying the obfuscation algorithm to selected one of the plurality of divided data using the security parameter and determine whether or not a hash value that the separated data is applied to the hash function as an input value and the data at the position where the finger print is inserted are the same as Kim teaches par.17 and 228), wherein the selected one segmented data is included in the segmented data set (Kim teaches that the selected one divided data to which the obfuscation algorithm is applied may be transmitted as Kim teaches in par.17).
Kim fails to teach one segmented data to be obfuscated, the preset per-position selection probability of each segmented data among the plurality of segmented data being set based on a per-position size of a segmented data set configured to differ according to a position of each segmented data, wherein the segmented data set includes some of the plurality of segmented data whose use frequency is larger than or equal to a predetermined value based on collected data, and wherein the report includes position information indicating where the selected one segmented data is located within the plurality of segmented data.
Aronovich teaches, similar system, the preset per-position selection probability of each segmented data among the plurality of segmented data being set based on a per-position size of a segmented data set configured to differ according to a position of each segmented data (Aronovich teaches computer program product for segmenting data into variable size blocks based on content defined positions. Segmenting probabilities and associated segmenting conditions are defined, The segmenting conditions are ordered in accordance with the associated segmenting probabilities to form a hierarchy of the segmenting conditions. A segmenting condition associated with a highest segmenting probability is defined to be a lowest level segmenting condition in the hierarchy of the segmenting conditions. The segmenting condition associated with a lowest segmenting probability is defined to be a highest level segmenting condition in the hierarchy of the segmenting conditions and the result of these dependencies is that different high level partitions of the data can cause a segmentation method to produce different segmentations for the same data as Aronovich as teaches in abstract and par.21). It would have been obvious to one ordinary skill in the art before effective filling date to modify Kim based on a per-position size of a segmented data set configured to differ according to a position of each segmented data as taught and suggested by Aronovich for the purpose of improving of reducing deduplication effectiveness, and can be prohibitive for large scale deduplication systems (Aronovich, par.21).
Thakurta teaches, similar system, one segmented data to be obfuscated (Thakurta teaches that the sampled word can be segmented into n-grams, an n-gram can be selected from the n-grams and processed using local differential privacy, then transmitted to a server. N-grams can be selected to be a particular length, such as 1 character (one-gram), 2 characters (bi-gram), etc. Throughout the disclosure, the term “n-gram” is used to generically refer to a sequence of characters having a specified length for a process. In an embodiment, a length of 2 is selected (bi-gram) to reduce search space complexity as Thakurta teaches in par.11), wherein the segmented data set includes some of the plurality of segmented data whose use frequency is larger than or equal to a predetermined value (Thakurta teaches that Learn new terms job 260 can periodically process the received, de-identified, and classify sketch data received from the large plurality of client devices 110. Learn new terms job 260 can include operations that include accumulating frequencies of received n-grams, generating permutations of n-grams, trimming the permutations of n-grams, and determining candidate new words from the permutations of n-grams. Learn new terms job 260 can also update asset catalog 275 to generate asset catalog update with updated frequencies of known words as Thakurta teaches in par.46, 71, 107 and 111), and wherein the report includes position information indicating where the selected one segmented data is located within the plurality of segmented data (Thakurta teaches that selected differentially private n-gram of the word to term learning server 130, along with selected n-gram position data, and class information of the new word, Each of the n-gram sketches at a position can be partitioned into groups having the same puzzle piece (PP) value. The puzzle piece signifies an n-gram sketch at a position that belongs with an n-gram sketch at another position based on the n-gram sketches having been obtained from the same word having the same puzzle piece value. The histogram of frequencies of n-gram sketches at positions, generated in FIG. 6 operation 632, can be partitioned into puzzle piece groups of n-gram sketches. The histogram can be grouped as ordered pairs of (n-gram sketch, puzzle piece), each having a frequency par.67 and 98-100 and 111). It would have been obvious to one ordinary skill in the art before effective filling date to modify Kim with select one segmented data to be obfuscated and segmented data whose use frequency is larger than or equal to a predetermined value as taught and suggested by Thakurta for the purpose of determining whether the amount of randomization in the differentially private data is sufficient to maintain differential privacy of client data (Thakurta, par.11).
Claims 7, 9-10, 17 and 19-20 are rejected under 35 U.S.C. 103 as being unpatentable over Kim et al (2020/0311306) in views of Thakurta et al (2018/0039619).
For claim 7, Kim teaches a server (abstract) comprising: a communication circuit(par.22, lines 1-2); memory storing one or more computer programs; one or more processors communicatively coupled to the communication circuit and the memory (Kim teaches that processor configured to be connected to the communicator and the memory to control the electronic device as Kim teaches in par.22), wherein the one or more computer programs include computer-executable instructions that, when executed by the one or more processors individually or collectively (Kim teaches that “application” refers to a set of computer programs designed to perform a specific task as Kim teaches in par.60), cause the electronic device to: receive, from an electronic device through the communication circuit, a plurality of segmented data to which an obfuscation algorithm is applied and a report for the plurality of segmented data (Kim teaches applying the obfuscation algorithm to selected one of the plurality of divided data using the security parameter as Kim teaches in par.17) (abstract), select, among the plurality of segmented data, segmented data with exceeding a predetermined value (Kim teaches that selected one of the plurality of divided data using the security parameter and probability of selecting any element among the respective elements may be the same probability as Kim teaches in par.17 and 207), the estimated by the server for each of the segmented data (Kim teaches that selected one of the plurality of divided data using the security parameter and probability of selecting any element among the respective elements may be the same probability as Kim teaches in par.17 and 207), restore candidate data by concatenating the selected segmented data based on duplicate data between the selected segmented data (Kim teaches that the server 200 may restore the report only for elements collected over a predetermined number of times among the reports sorted by a specific index as Kim teaches in par.211), and obtain the restored candidate data as final data based on a data portion and a fingerprint portion included in the restored candidate data (Kim teaches that The server 200 may restore the word transmitted by the electronic device 100 by using the elements of the 2-gram sorted and restored for each index as Kim teaches in par.212),
Kim fails to teach segmented data with a collection frequency and the collection frequency being estimated by the server for each of the segmented data, wherein a segmented data set including a predetermined number of data among all combinations of per-position segmented data for the plurality of segmented data as elements is predefined and wherein the collection frequency of the per-position segmented data is set based on a number of elements of the segmented data set per position, wherein the number of elements of the segmented data set is configured to differ according to a position of each segmented data and wherein the report includes position information indicating where the selected one segmented data is located within the plurality of segmented data.
Thakurta teaches, similar system, segmented data with a collection frequency (Thakurta teaches that including an n-gram/position frequencies storage as Thakurta teaches in par.43), the collection frequency being estimated by the server for each of the segmented data (Thakurta teaches that term learning server 130 can generate, or retrieve, a sketch for each known n-gram. A sketch of an n-gram can be used as an index to match a received n-gram sketch with a known n-gram sketch so that the frequency of the n-gram at a position can be accumulated. In an embodiment, frequently occurring n-grams can have a pre-generated sketch stored in tuple/position database 270. For example, in a first position, the n-gram, “th” is a commonly occurring n-gram as it starts many words. In an embodiment, a sketch of each n-gram is stored in tuple/position database 270 for all n-grams, e.g. “aa,” “ab,” “ac,” etc as Thakurta teaches in par.46, 71, 98, 107 and 111), wherein a segmented data set including a predetermined number of data among all combinations of per-position segmented data for the plurality of segmented data as elements is predefined (Thakurta teaches that Learn new terms job 260 can include operations that include accumulating frequencies of received n-grams, generating permutations of n-grams, trimming the permutations of n-grams, and determining candidate new words from the permutations of n-grams. Learn new terms job 260 can also update asset catalog 275 to generate asset catalog update with updated frequencies of known words including an n-gram/position frequencies storage as Thakurta teaches in par.43, 46, 71 and 107), wherein the collection frequency of the per-position segmented data is set based on a number of elements of the segmented data set per position (Thakurta teaches that term learning server 130 can generate, or retrieve, a sketch for each known n-gram. A sketch of an n-gram can be used as an index to match a received n-gram sketch with a known n-gram sketch so that the frequency of the n-gram at a position can be accumulated. In an embodiment, frequently occurring n-grams can have a pre-generated sketch stored in tuple/position database 270. For example, in a first position, the n-gram, “th” is a commonly occurring n-gram as it starts many words. In an embodiment, a sketch of each n-gram is stored in tuple/position database 270 for all n-grams, e.g. “aa,” “ab,” “ac,” etc as Thakurta teaches in par.98), wherein the number of elements of the segmented data set is configured to differ according to a position of each segmented data (Thakurta teaches that accumulating frequencies of differentially private sketches of words and n-grams received from crowdsourced data, while preserving client privacy, A sketch of an n-gram can be used as an index to match a received n-gram sketch with a known n-gram sketch so that the frequency of the n-gram at a position can be accumulated. In an embodiment, frequently occurring n-grams can have a pre-generated sketch stored in tuple/position database 270. For example, in a first position, the n-gram, “th” is a commonly occurring n-gram as it starts many words. In an embodiment, a sketch of each n-gram is stored in tuple/position database 270 for all n-grams, e.g. “aa,” “ab,” “ac,” etc as Thakurta teaches in par.95 and 98) and wherein the report includes position information indicating where the selected one segmented data is located within the plurality of segmented data (Thakurta teaches that selected differentially private n-gram of the word to term learning server 130, along with selected n-gram position data, and class information of the new word, Each of the n-gram sketches at a position can be partitioned into groups having the same puzzle piece (PP) value. The puzzle piece signifies an n-gram sketch at a position that belongs with an n-gram sketch at another position based on the n-gram sketches having been obtained from the same word having the same puzzle piece value. The histogram of frequencies of n-gram sketches at positions, generated in FIG. 6 operation 632, can be partitioned into puzzle piece groups of n-gram sketches. The histogram can be grouped as ordered pairs of (n-gram sketch, puzzle piece), each having a frequency par.67 and 98-100 and 111). It would have been obvious to one ordinary skill in the art before effective filling date to modify Kim with segmented data with a collection frequency as taught and suggested by Thakurta for the purpose of determining whether the amount of randomization in the differentially private data is sufficient to maintain differential privacy of client data (Thakurta, par.11).
For claims 9 and 19, Kim, as modified by Thakurta, further teaches wherein the per-position segmented data included in the report is included in the segmented data set (par.228).
For claim 10, Kim, as modified by Thakurta, further teaches wherein the data of the per-position segmented data is set based on a number of the elements of the per-position segmented data (par.228).
Kim fails to teach the collection frequency of the data.
Thakurta further teaches the collection frequency of the data (par.43). It would have been obvious to one ordinary skill in the art before effective filling date to modify Kim with frequency as taught and suggested by Thakurta for the purpose of determining whether the amount of randomization in the differentially private data is sufficient to maintain differential privacy of client data (Thakurta, par.11).
For claim 17, Kim teaches method performed by a server (abstract), the method comprising: receiving, by the server from an electronic device, a plurality of segmented data to which an obfuscation algorithm is applied and a report for the plurality of segmented data (Kim teaches applying the obfuscation algorithm to selected one of the plurality of divided data using the security parameter as Kim teaches in par.17); selecting, by the server, segmented data with a data exceeding a predetermined value among the plurality of segmented data (Kim teaches that selected one of the plurality of divided data using the security parameter and probability of selecting any element among the respective elements may be the same probability as Kim teaches in par.17 and 207), the estimated for each of the segmented data (Kim teaches that selected one of the plurality of divided data using the security parameter and probability of selecting any element among the respective elements may be the same probability as Kim teaches in par.17 and 207); restoring, by the server, candidate data by concatenating the selected segmented data based on duplicate data between the selected segmented data (Kim teaches that the server 200 may restore the report only for elements collected over a predetermined number of times among the reports sorted by a specific index as Kim teaches in par.211); and obtaining, by the server, the restored candidate data as final data based on a data portion and a fingerprint portion included in the restored candidate data (Kim teaches that The server 200 may restore the word transmitted by the electronic device 100 by using the elements of the 2-gram sorted and restored for each index as Kim teaches in par.212).
Kim fails to teach segmented data with a collection frequency and the collection frequency being estimated by the server for each of the segmented data, wherein a segmented data set including a predetermined number of data among all combinations of per-position segmented data for the plurality of segmented data as elements is predefined and wherein the collection frequency of the per-position segmented data is set based on a number of elements of the segmented data set per position, wherein the number of elements of the segmented data set is configured to differ according to a position of each segmented data and wherein the report includes position information indicating where the selected one segmented data is located within the plurality of segmented data.
Thakurta teaches, similar system, segmented data with a collection frequency (Thakurta teaches that including an n-gram/position frequencies storage as Thakurta teaches in par.43), the collection frequency being estimated by the server for each of the segmented data (Thakurta teaches that term learning server 130 can generate, or retrieve, a sketch for each known n-gram. A sketch of an n-gram can be used as an index to match a received n-gram sketch with a known n-gram sketch so that the frequency of the n-gram at a position can be accumulated. In an embodiment, frequently occurring n-grams can have a pre-generated sketch stored in tuple/position database 270. For example, in a first position, the n-gram, “th” is a commonly occurring n-gram as it starts many words. In an embodiment, a sketch of each n-gram is stored in tuple/position database 270 for all n-grams, e.g. “aa,” “ab,” “ac,” etc as Thakurta teaches in par.46, 71, 98, 107 and 111), wherein a segmented data set including a predetermined number of data among all combinations of per-position segmented data for the plurality of segmented data as elements is predefined (Thakurta teaches that Learn new terms job 260 can include operations that include accumulating frequencies of received n-grams, generating permutations of n-grams, trimming the permutations of n-grams, and determining candidate new words from the permutations of n-grams. Learn new terms job 260 can also update asset catalog 275 to generate asset catalog update with updated frequencies of known words including an n-gram/position frequencies storage as Thakurta teaches in par.43, 46, 71 and 107), wherein the collection frequency of the per-position segmented data is set based on a number of elements of the segmented data set per position (Thakurta teaches that term learning server 130 can generate, or retrieve, a sketch for each known n-gram. A sketch of an n-gram can be used as an index to match a received n-gram sketch with a known n-gram sketch so that the frequency of the n-gram at a position can be accumulated. In an embodiment, frequently occurring n-grams can have a pre-generated sketch stored in tuple/position database 270. For example, in a first position, the n-gram, “th” is a commonly occurring n-gram as it starts many words. In an embodiment, a sketch of each n-gram is stored in tuple/position database 270 for all n-grams, e.g. “aa,” “ab,” “ac,” etc as Thakurta teaches in par.98), wherein the number of elements of the segmented data set is configured to differ according to a position of each segmented data (Thakurta teaches that accumulating frequencies of differentially private sketches of words and n-grams received from crowdsourced data, while preserving client privacy, A sketch of an n-gram can be used as an index to match a received n-gram sketch with a known n-gram sketch so that the frequency of the n-gram at a position can be accumulated. In an embodiment, frequently occurring n-grams can have a pre-generated sketch stored in tuple/position database 270. For example, in a first position, the n-gram, “th” is a commonly occurring n-gram as it starts many words. In an embodiment, a sketch of each n-gram is stored in tuple/position database 270 for all n-grams, e.g. “aa,” “ab,” “ac,” etc as Thakurta teaches in par.95 and 98) and wherein the report includes position information indicating where the selected one segmented data is located within the plurality of segmented data (Thakurta teaches that selected differentially private n-gram of the word to term learning server 130, along with selected n-gram position data, and class information of the new word, Each of the n-gram sketches at a position can be partitioned into groups having the same puzzle piece (PP) value. The puzzle piece signifies an n-gram sketch at a position that belongs with an n-gram sketch at another position based on the n-gram sketches having been obtained from the same word having the same puzzle piece value. The histogram of frequencies of n-gram sketches at positions, generated in FIG. 6 operation 632, can be partitioned into puzzle piece groups of n-gram sketches. The histogram can be grouped as ordered pairs of (n-gram sketch, puzzle piece), each having a frequency par.67 and 98-100 and 111). It would have been obvious to one ordinary skill in the art before effective filling date to modify Kim with segmented data with a collection frequency as taught and suggested by Thakurta for the purpose of determining whether the amount of randomization in the differentially private data is sufficient to maintain differential privacy of client data (Thakurta, par.11).
For claim 20, Kim, as modified by Thakurta, further teaches wherein the frequency of the per-position segmented data is set based on a number of the elements of the per-position segmented data (par.19 and 228), wherein two pieces of segmented data adjacent to each other include duplicate data having a preset size (par.27 and par.28), and wherein a first segmented data and a last segmented data include duplicate data larger than the preset size (par.28 and par.29).
Response to Amendments/Arguments
Applicant’s arguments with respect to claim(s) 1-2, 6-7, 9-12, 16-17 and 19-20 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument.
The applicant’s arguments regarding new amendments limitations in claims 1, 7, 11 and 17, has been considered but is moot, because the examiner applied new art, Thakurta et al (2018/0039619) that covers newly claimed limitation.
Regarding dependent claims arguments, said arguments are moot because the applied references are not considered to have alleged differences, and therefore are considered to properly show that for which they were cited.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to AYUB A MAYE whose telephone number is (571)270-5037. The examiner can normally be reached Monday-Friday 9AM-5PM.
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, SHEWAYE GELAGAY can be reached at 571-272-4219. 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.
/AYUB A MAYE/Examiner, Art Unit 2436
/MOEEN KHAN/Primary Examiner, Art Unit 2436