This project aims to obtain provably optimal cryptographic constructions, using objectively practical techniques, for a wide range of tasks. To achieve this goal, the project makes progress on three technical fronts. First, a general-purpose framework is developed that encompasses and systematizes known practical cryptographic techniques from many domains. Second, the project develops techniques for proving concrete, fine-grained lower bounds about constructions within this framework. Finally, techniques from program synthesis will be applied to the new framework.