diff --git a/libwccl/ops/functions/bool/predicates/strongagreement.cpp b/libwccl/ops/functions/bool/predicates/strongagreement.cpp
index a29be8daa22c35ab529fb535d76a727a176615bb..8678cf47e67ecef90d033a4c73a175b6c029ef50 100644
--- a/libwccl/ops/functions/bool/predicates/strongagreement.cpp
+++ b/libwccl/ops/functions/bool/predicates/strongagreement.cpp
@@ -76,7 +76,7 @@ StrongAgreement::BaseRetValPtr StrongAgreement::apply_internal(const FunExecCont
 						agreement_met = false;
 						foreach(const Corpus2::Lexeme& i_lex, sc.at(i)->lexemes()) {
 							Corpus2::Tag i_inter = i_lex.tag().get_masked(inter);
-							if (attribs->matching_categories(i_inter) < min_card) {
+							if (attribs->matching_categories(i_inter) >= min_card) {
 								agreement_met = true;
 								break;
 							}