Arguments: const MPModelProto& model, double abs_value_threshold = 0.0, // If false, variable and constraint bounds like [lb=1.2, ub=0.7] yield an // error, and also integer variable bounds like [0.7, 0.8]. bool accept_trivially_infeasible_bounds = false
[[["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."],[[["\u003cp\u003eThe \u003ccode\u003emodel_validator\u003c/code\u003e in C++ provides functions to validate and extract data from Mathematical Programming (MP) model representations.\u003c/p\u003e\n"],["\u003cp\u003eIt includes functionalities to identify errors within \u003ccode\u003eMPModelProto\u003c/code\u003e and \u003ccode\u003eMPModelDeltaProto\u003c/code\u003e objects, including constraint and variable bound inconsistencies.\u003c/p\u003e\n"],["\u003cp\u003eThe validator can apply verified model deltas to existing models, and it can extract valid models while populating response statuses.\u003c/p\u003e\n"],["\u003cp\u003eFunctions are available to check for feasibility errors within solution hints based on provided tolerance values.\u003c/p\u003e\n"],["\u003cp\u003eThe library facilitates model manipulation by allowing merging of constraints, excluding their specific terms.\u003c/p\u003e\n"]]],["The `model_validator` documentation outlines functions for validating and manipulating linear programming models. Key actions include: applying `MPModelDeltaProto` changes to an `MPModelProto` using `ApplyVerifiedMPModelDelta`, extracting a valid model from a request or in place with `ExtractValidMPModelOrPopulateResponseStatus` and `ExtractValidMPModelInPlaceOrPopulateResponseStatus`, respectively. Error detection is done by `FindErrorInMPModelDeltaProto`, `FindErrorInMPModelProto`, and `FindFeasibilityErrorInSolutionHint`. Finally, merging constraints is possible via `MergeMPConstraintProtoExceptTerms`.\n"],null,["# model_validator\n\nC++ Reference: model_validator\n==============================\n\n\nNote: This documentation is automatically generated.\n\n| Function | Type | Arguments | Comments |\n|--------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------|----------|\n| [`ApplyVerifiedMPModelDelta`](https://github.com/google/or-tools/blob/v9.4/ortools/linear_solver/model_validator.h#L93) | Return type: `void ` Arguments: `const MPModelDeltaProto& delta, MPModelProto* model` \u003cbr /\u003e |\n| [`ExtractValidMPModelInPlaceOrPopulateResponseStatus`](https://github.com/google/or-tools/blob/v9.4/ortools/linear_solver/model_validator.h#L66) | Return type: `bool ` Arguments: ` MPModelRequest* request, MPSolutionResponse* response` \u003cbr /\u003e |\n| [`ExtractValidMPModelOrPopulateResponseStatus`](https://github.com/google/or-tools/blob/v9.4/ortools/linear_solver/model_validator.h#L58) | \u003cbr /\u003e Arguments: `const MPModelRequest& request, MPSolutionResponse* response` \u003cbr /\u003e |\n| [`FindErrorInMPModelDeltaProto`](https://github.com/google/or-tools/blob/v9.4/ortools/linear_solver/model_validator.h#L50) | Return type: `std::string ` Arguments: `const MPModelDeltaProto& delta, const MPModelProto& model` \u003cbr /\u003e |\n| [`FindErrorInMPModelProto`](https://github.com/google/or-tools/blob/v9.4/ortools/linear_solver/model_validator.h#L38) | Return type: `std::string ` Arguments: ` const MPModelProto& model, double abs_value_threshold = 0.0, // If false, variable and constraint bounds like [lb=1.2, ub=0.7] yield an // error, and also integer variable bounds like [0.7, 0.8]. bool accept_trivially_infeasible_bounds = false` \u003cbr /\u003e |\n| [`FindFeasibilityErrorInSolutionHint`](https://github.com/google/or-tools/blob/v9.4/ortools/linear_solver/model_validator.h#L79) | Return type: `std::string ` Arguments: `const MPModelProto& model, double tolerance` \u003cbr /\u003e |\n| [`MergeMPConstraintProtoExceptTerms`](https://github.com/google/or-tools/blob/v9.4/ortools/linear_solver/model_validator.h#L87) | Return type: `void ` Arguments: `const MPConstraintProto& from, MPConstraintProto* to` \u003cbr /\u003e |"]]