AB
Arkadi Beridze
От лат. contrahere, то есть, тут не контр+акт, а кон+тракт, со+влечение/с+ведение, со+единение, со+глашение.
Буквально, контракт происходит от CONTRACTUM, отглагольного существительного, отбразованного от латинского глагола CONTRAHERE (основное значение "стягивать, сжимать").
Здесь CON- cуть префикс, приставка, выражающая совместность действия, TRAHO- суть основа.
Не следует смешивать этот глагол с латинским CONTRA (это может быть или предлог, или наречие) .
Контракт это когда те, кто его заключают, связывают (стягивают, сжимают) себя взаимными обязательствами.
Никакого семантического противостояния здесь нет.
Это акт между противостоящими лицами.