Попробую.
Вектор на плоскости - это путь, стрелка из начала. У него есть направление и длина.
Ковектор(функционал) на плоскости тоже выделяет направление, но по-другому. Его можно представить себе как систему "верстовых прямых", отмеряющих, сколько мы прошли от начала в каком-то направлении
Операция умножения вектора на ковектор - это определение того, сколько именно "верстовых прямых" мы прошли по стрелке
Заметим, что все это мы сделали совсем без координат. И вектор, и ковектор - это объекты, которые есть сами по себе, координаты нужны только для того, чтобы их измерить. Координаты вектора определяются обычным образом - надо посмотреть, сколько мы прошли на север, а сколько - на восток:
Координаты ковектора - это отметки "верстовых прямых" на единицах осей.
Когда мы умножаем вектор на ковектор, мы можем представить и тот, и другой в координатах и перемножить соответствующие координаты - потому что координаты вектора показывают нам, сколько мы проехали на север и сколько на восток, а координаты ковектора - сколько "верстовых прямых" мы увидим на каждой единице северного направления, и сколько - на единице восточного
При переходе в другую систему координат координаты и векторов, и ковекторов меняются, потому что оси начинают проходить по-другому. Но результат умножения вектора на ковектор измениться не должен, он ведь совсем не зависит от того, в какую сторону показывает компас. Поэтому, если координаты вектора изменились каким-то образом, то координаты ковектора должны измениться так, чтобы это первое изменение нивелировать. Например, если мы увеличили единицу по горизонтали, то первая координата вектора уменьшится в два раза, а первая координата ковектора в два раза увеличится.