  This paper focuses on the controller synthesis for unknown, nonlinear systems
while ensuring safety constraints. Our approach consists of two steps, a
learning step that uses Gaussian processes and a controller synthesis step that
is based on control barrier functions. In the learning step, we use a
data-driven approach utilizing Gaussian processes to learn the unknown control
affine nonlinear dynamics together with a statistical bound on the accuracy of
the learned model. In the second controller synthesis steps, we develop a
systematic approach to compute control barrier functions that explicitly take
into consideration the uncertainty of the learned model. The control barrier
function not only results in a safe controller by construction but also
provides a rigorous lower bound on the probability of satisfaction of the
safety specification. Finally, we illustrate the effectiveness of the proposed
results by synthesizing a safety controller for a jet engine example.
