Представьте себе матрицу A
, имеющую один столбец с множеством операторов неравенства / равенства (≥, = ≤) и вектор b
, где количество строк в A
равно количеству элементов в b
. Тогда одна строка в моих настройках будет вычисляться, например,
dot(A[0, 1:], x) ≥ b[0]
, где x
- некоторый вектор, столбец A[,0]
представляет все операторы, и мы бы знали, что для строки 0 мы должны были вычислить с использованием оператора ≥
(верно ei A[0,0] == "≥"
). Теперь, есть ли способ динамически вычислять все строки следующим пока воображаемым способом
dot(A[, 1:], x) A[, 0] b
Я надеялся на динамическую c оценку каждой строки, где мы оцениваем, какой оператор используется для каждой строки.
Например, пусть
A = [
[">=", -2, 1, 1],
[">=", 0, 1, 0],
["==", 0, 1, 1]
]
b = [0, 1, 1]
и x будет некоторым заданным вектором, например, x = [1,1,0]
мы будем sh вычислить следующим образом:
A[,1:] x A[,0] b
dot([-2, 1, 1], [1, 1, 0]) >= 0
dot([0, 1, 0], [1, 1, 0]) >= 1
dot([0, 1, 1], [1, 1, 0]) == 1
Результат будет быть [False, True, True]