A method, implemented by a processor, for determining timing paths and reconciling topology in a superconducting circuit design, wherein the superconducting circuit design comprises a first timing path including a first timing endpoint associated with a first circuit component and a second timing endpoint associated with a second circuit component, and wherein each of the first circuit component and the second circuit component comprises Josephson junctions, and wherein the first circuit component is assigned a first phase and the second circuit component is assigned a second phase, the method comprising:
- using the processor, determining a first legal start time for the first timing endpoint on the timing path and determining a second legal start time for the second timing endpoint on the timing path;
- inserting a first shadow element representing a first physically connected component on the timing path, wherein the first shadow element precedes the first circuit component on the timing path;
- inserting a second shadow element representing a second physically connected component on the timing path, wherein the second shadow element follows the second circuit component on the timing path;
- and
- addressing any changes to the first legal start time and the second legal start time caused by an insertion of the first shadow element and the second shadow element on the timing path.