[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-08-06 UTC."],[[["The `cp_model_checker` provides functionalities to validate and check the feasibility of CP models."],["`SolutionIsFeasible` checks if a given solution is feasible for a given CP model."],["`ValidateCpModel` validates the structure of a CP model before or after presolve."],["`ValidateInputCpModel` validates a CP model against given SatParameters."]]],["The provided C++ documentation details three functions for validating and checking CP (Constraint Programming) models. `ValidateCpModel` checks a `CpModelProto` for validity, optionally after presolving, returning a string describing any errors. `ValidateInputCpModel` validates a `CpModelProto` against given `SatParameters`, also returning error information. `SolutionIsFeasible` verifies if a solution (`variable_values`) is feasible for a given `CpModelProto`, considering potential mapping and postsolve data, returning a boolean.\n"]]