@@ -20,7 +20,7 @@ public struct Complex<T : FloatingPoint> {
20
20
}
21
21
}
22
22
23
- extension Complex : Differentiable where T : Differentiable , T. TangentVector == T {
23
+ extension Complex : Differentiable where T : Differentiable /* , T.TangentVector == T*/ {
24
24
// ---------------------------------------------------------------------------
25
25
// MARK: Differentiability
26
26
// ---------------------------------------------------------------------------
@@ -135,7 +135,7 @@ extension Complex : AdditiveArithmetic {
135
135
// ---------------------------------------------------------------------------
136
136
137
137
@inlinable
138
- @differentiable ( vjp: _vjpAdd ( lhs: rhs: ) where T : Differentiable, T . TangentVector == T )
138
+ @differentiable ( vjp: _vjpAdd ( lhs: rhs: ) where T : Differentiable)
139
139
public static func + ( lhs: Complex , rhs: Complex ) -> Complex {
140
140
var lhs = lhs
141
141
lhs += rhs
@@ -149,7 +149,7 @@ extension Complex : AdditiveArithmetic {
149
149
}
150
150
151
151
@inlinable
152
- @differentiable ( vjp: _vjpSubtract ( lhs: rhs: ) where T : Differentiable, T . TangentVector == T )
152
+ @differentiable ( vjp: _vjpSubtract ( lhs: rhs: ) where T : Differentiable)
153
153
public static func - ( lhs: Complex , rhs: Complex ) -> Complex {
154
154
var lhs = lhs
155
155
lhs -= rhs
@@ -175,7 +175,7 @@ extension Complex : Numeric {
175
175
}
176
176
177
177
@inlinable
178
- @differentiable ( vjp: _vjpMultiply ( lhs: rhs: ) where T : Differentiable, T . TangentVector == T )
178
+ @differentiable ( vjp: _vjpMultiply ( lhs: rhs: ) where T : Differentiable)
179
179
public static func * ( lhs: Complex , rhs: Complex ) -> Complex {
180
180
var a = lhs. real, b = lhs. imaginary, c = rhs. real, d = rhs. imaginary
181
181
let ac = a * c, bd = b * d, ad = a * d, bc = b * c
@@ -244,7 +244,7 @@ extension Complex : SignedNumeric {
244
244
// ---------------------------------------------------------------------------
245
245
246
246
@inlinable
247
- @differentiable ( vjp: _vjpNegate where T : Differentiable, T . TangentVector == T )
247
+ @differentiable ( vjp: _vjpNegate where T : Differentiable)
248
248
public static prefix func - ( operand: Complex ) -> Complex {
249
249
return Complex ( real: - operand. real, imaginary: - operand. imaginary)
250
250
}
@@ -262,7 +262,7 @@ extension Complex {
262
262
// ---------------------------------------------------------------------------
263
263
264
264
@inlinable
265
- @differentiable ( vjp: _vjpDivide ( lhs: rhs: ) where T : Differentiable, T . TangentVector == T )
265
+ @differentiable ( vjp: _vjpDivide ( lhs: rhs: ) where T : Differentiable)
266
266
public static func / ( lhs: Complex , rhs: Complex ) -> Complex {
267
267
var a = lhs. real, b = lhs. imaginary, c = rhs. real, d = rhs. imaginary
268
268
var x : T
@@ -353,7 +353,7 @@ extension Complex {
353
353
}
354
354
}
355
355
356
- extension Complex where T : Differentiable , T. TangentVector == T {
356
+ extension Complex where T : Differentiable /* , T.TangentVector == T*/ {
357
357
@inlinable
358
358
static func _vjpAdd( lhs: Complex , rhs: Complex )
359
359
-> ( Complex , ( Complex ) -> ( Complex , Complex ) ) {
@@ -383,7 +383,9 @@ extension Complex where T : Differentiable, T.TangentVector == T {
383
383
-> ( Complex , ( Complex ) -> Complex ) {
384
384
return ( - operand, { v in - v} )
385
385
}
386
+ }
386
387
388
+ extension Complex where T : Differentiable , T. TangentVector == T {
387
389
@inlinable
388
390
func _vjpAdding( real: T ) -> ( Complex , ( Complex ) -> ( Complex , T ) ) {
389
391
return ( self . adding ( real: real) , { ( $0, $0. real) } )
@@ -403,4 +405,4 @@ extension Complex where T : Differentiable, T.TangentVector == T {
403
405
func _vjpSubtracting( imaginary: T ) -> ( Complex , ( Complex ) -> ( Complex , T ) ) {
404
406
return ( self . subtracting ( real: real) , { ( $0, - $0. imaginary) } )
405
407
}
406
- }
408
+ }
0 commit comments