Euclide có thể phân biệt được

public protocol EuclideanDifferentiable : Differentiable

Một loại có khả vi trong không gian Euclide. Loại này có thể biểu diễn một không gian vectơ hoặc bao gồm một không gian vectơ và một số thành phần không khả vi khác.

Về mặt toán học, điều này biểu thị một đa tạp tích bao gồm một không gian vectơ khả vi và một số đa tạp tùy ý, trong đó bó tiếp tuyến của toàn bộ đa tạp tích bằng thành phần không gian vectơ.

Sự trừu tượng hóa này rất hữu ích để biểu diễn các cấu trúc dữ liệu khả vi chung chứa cả các thuộc tính vectơ khả vi và các thuộc tính được lưu trữ khác không có đạo hàm, ví dụ:

struct Perceptron: @memberwise EuclideanDifferentiable {
    var weight: SIMD16<Float>
    var bias: Float
    @noDerivative var useBias: Bool
}

Ghi chú

Tuân thủ một kiểu với EuclideanDifferentiable nếu nó chỉ khả vi đối với thành phần không gian vectơ của nó và khi TangentVector của nó bằng thành phần không gian vectơ của nó.