17. A computer-implemented method comprising: receiving a request for accessing data stored in a storage location; in an event of a failure in retrieving data stored in the storage location, determining whether the failure is associated with an entirety of the request or a portion of the request; upon determining that the failure is associated with the portion of the request: retrieving, from a storage location, a storage and privacy service (SPS) program expressing one or more access control rules defining data access within a social networking system; granting, based on the SPS program, access to data that is retrievable from the storage location; receiving one or more assertions to test compliance of the SPS program in view of a set of privacy constraints; generating, using a processor, a logical representation of the SPS program based on the one or more assertions, wherein the logical representation represents an abstraction of the SPS program based on the one or more assertions and includes Boolean variables; and searching over assignments to the Boolean variables in the logical representation of the SPS program to determine if the SPS program satisfies the privacy constraints in view of the one or more assertions.
18. The computer-implemented method of claim 17 , wherein searching over the assignments includes submitting the logical representation to a constraint solver to generate a set of access control responses of the SPS program in view of the one or more assertions.