リテラルと型について勉強中です。

ExpressibleByFloatLiteralの次の付属型は、既定型としてDouble型となっているそうですが、
ソースでは、

associatedtype FloatLiteralType : _ExpressibleByBuiltinFloatLiteral

と記述されているようです。※GitHubに上がっているソースから参照しただけですが。。。

associatedtype FloatLiteralType : _ExpressibleByBuiltinFloatLiteral = Double

と記述されているなら理解できますが、なぜデフォルトが、Double型となるのでしょうか。

またAppleリファレンスで、「FloatLiteralType」で検索したところ、「typealias FloatLiteralType = Double」と記述されていましたが、どこでこれらの宣言がおこなわれているのでしょうか。教えてください。