breandan
01/31/2021, 3:48 PMaltavir
01/31/2021, 3:52 PMaltavir
01/31/2021, 3:54 PMbreandan
01/31/2021, 3:57 PMaltavir
01/31/2021, 4:03 PMbreandan
01/31/2021, 4:14 PMaltavir
01/31/2021, 4:17 PMРолан
02/02/2021, 6:22 AMРолан
02/02/2021, 6:26 AMРолан
02/02/2021, 6:35 AMРолан
02/02/2021, 6:38 AMaltavir
02/02/2021, 6:41 AMbreandan
02/02/2021, 5:57 PMVectorField
be a subtype of Field
, it must be a tuple of Vector
and Field
with its own products (e.g. hadamard, inner product). Here is one implementation: https://github.com/breandan/kotlingrad/blob/master/core/src/main/kotlin/edu/umontreal/kotlingrad/typelevel/TypeClassing.kt#L235altavir
02/02/2021, 6:09 PMРолан
02/03/2021, 7:56 AMbreandan
02/06/2021, 8:59 PMVectorField
interface itself, forcing all inheritors to implement, but as an extension function.
I recently gave a presentation about vmap
, a pattern which we borrowed in Kotlingrad for working with tensors. You pass in a lambda and it returns a function which accepts a tensor and maps the lambda over a tensor. This can be element wise, or using some more complicated mapping (e.g. convolution). https://github.com/compcalc/compcalc.github.io/blob/main/public/pytorch/ad_pytorch.pdf
I was also reading about RCF, which has some nice computation properties for defining mathematical type systems: https://en.wikipedia.org/wiki/Real_closed_fieldРолан
02/07/2021, 8:55 AMРолан
02/07/2021, 8:59 AMAleksei Dievskii
02/07/2021, 10:30 AMNDField
wasn't a field in the mathematical sense. it can be more accurately described an (associative commutative unitary) algebra using Hadamar product.altavir
02/07/2021, 10:32 AMAleksei Dievskii
02/07/2021, 10:34 AMaltavir
02/07/2021, 10:36 AMaltavir
02/07/2021, 10:37 AMReal
in favor of working with Kotlin Double, so we can add custom algebra to work with real reals.Aleksei Dievskii
02/07/2021, 10:44 AMaltavir
02/07/2021, 10:46 AMРолан
02/07/2021, 12:07 PMAleksei Dievskii
02/07/2021, 12:22 PM(a/b) * b = a
for any valid b != 0
. this doesn't hold for NDField
's division: [1,1]/[1,0] * [1,0] = [1, NaN]
. that should in no way preclude KMath
from specifying that their Field
has some different properties.altavir
02/07/2021, 12:33 PMbreandan
02/07/2021, 2:55 PMaltavir
02/07/2021, 3:03 PMbreandan
02/07/2021, 4:16 PMaltavir
02/07/2021, 4:18 PMРолан
02/07/2021, 4:54 PMAleksei Dievskii
02/07/2021, 5:12 PM