{"bundle_type":"pith_open_graph_bundle","bundle_version":"1.0","pith_number":"pith:2023:R5I3YN6TDSVJVWPTJ5U3ETEOJG","short_pith_number":"pith:R5I3YN6T","canonical_record":{"source":{"id":"2303.08850","kind":"arxiv","version":1},"metadata":{"license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","primary_cat":"math.OC","submitted_at":"2023-03-15T18:10:23Z","cross_cats_sorted":["cs.RO","cs.SY","eess.SY"],"title_canon_sha256":"31e123d41be9d7551693331cbcee7095d6c91a4364a51859d45e3f6fb079ac8f","abstract_canon_sha256":"380d1a306010d8970ad5028f29d9880ef883dcf7b52a625b266fa2618f7cdcde"},"schema_version":"1.0"},"canonical_sha256":"8f51bc37d31caa9ad9f34f69b24c8e49a6c083409e1260e7b721c580693fda91","source":{"kind":"arxiv","id":"2303.08850","version":1},"source_aliases":[{"alias_kind":"arxiv","alias_value":"2303.08850","created_at":"2026-07-05T07:29:38Z"},{"alias_kind":"arxiv_version","alias_value":"2303.08850v1","created_at":"2026-07-05T07:29:38Z"},{"alias_kind":"doi","alias_value":"10.48550/arxiv.2303.08850","created_at":"2026-07-05T07:29:38Z"},{"alias_kind":"pith_short_12","alias_value":"R5I3YN6TDSVJ","created_at":"2026-07-05T07:29:38Z"},{"alias_kind":"pith_short_16","alias_value":"R5I3YN6TDSVJVWPT","created_at":"2026-07-05T07:29:38Z"},{"alias_kind":"pith_short_8","alias_value":"R5I3YN6T","created_at":"2026-07-05T07:29:38Z"}],"events":[{"event_type":"record_created","subject_pith_number":"pith:2023:R5I3YN6TDSVJVWPTJ5U3ETEOJG","target":"record","payload":{"canonical_record":{"source":{"id":"2303.08850","kind":"arxiv","version":1},"metadata":{"license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","primary_cat":"math.OC","submitted_at":"2023-03-15T18:10:23Z","cross_cats_sorted":["cs.RO","cs.SY","eess.SY"],"title_canon_sha256":"31e123d41be9d7551693331cbcee7095d6c91a4364a51859d45e3f6fb079ac8f","abstract_canon_sha256":"380d1a306010d8970ad5028f29d9880ef883dcf7b52a625b266fa2618f7cdcde"},"schema_version":"1.0"},"canonical_sha256":"8f51bc37d31caa9ad9f34f69b24c8e49a6c083409e1260e7b721c580693fda91","receipt":{"kind":"pith_receipt","key_id":"pith-v1-2026-05","algorithm":"ed25519","signed_at":"2026-07-05T07:29:38.226639Z","signature_b64":"1lsm8LhRLBHENn0sqnP9ifTMBJIv5RwtAa5PvjPpcgwfE3WSXjtNNviwXJ9Z5pbqsJnJ02Dyw6QhICszdbT9DA==","signed_message":"canonical_sha256_bytes","builder_version":"pith-number-builder-2026-05-17-v1","receipt_version":"0.3","canonical_sha256":"8f51bc37d31caa9ad9f34f69b24c8e49a6c083409e1260e7b721c580693fda91","last_reissued_at":"2026-07-05T07:29:38.226238Z","signature_status":"signed_v1","first_computed_at":"2026-07-05T07:29:38.226238Z","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54"},"source_kind":"arxiv","source_id":"2303.08850","source_version":1,"attestation_state":"computed"},"signer":{"signer_id":"pith.science","signer_type":"pith_registry","key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54"},"created_at":"2026-07-05T07:29:38Z","supersedes":[],"prev_event":null,"signature":{"signature_status":"signed_v1","algorithm":"ed25519","key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54","signature_b64":"en1FYnU0beUm7IN30so4e0Ie9E5aYIwfxbInunPONRSn3EKzvSwBrdWga3W4GRoTrBoyCAzsdiG42sTqC5M4Dw==","signed_message":"open_graph_event_sha256_bytes","signed_at":"2026-08-19T15:29:33.427789Z"},"content_sha256":"36e52d512b630d9760ac6f3936e184dcd410b9515ee9e51b166a4004923a1c1f","schema_version":"1.0","event_id":"sha256:36e52d512b630d9760ac6f3936e184dcd410b9515ee9e51b166a4004923a1c1f"},{"event_type":"graph_snapshot","subject_pith_number":"pith:2023:R5I3YN6TDSVJVWPTJ5U3ETEOJG","target":"graph","payload":{"graph_snapshot":{"paper":{"title":"IMPACT: A Toolchain for Nonlinear Model Predictive Control Specification, Prototyping, and Deployment","license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","headline":"","cross_cats":["cs.RO","cs.SY","eess.SY"],"primary_cat":"math.OC","authors_text":"Alejandro Astudillo, Alvaro Florez, Jan Swevers, Joris Gillis, Wilm Decr\\'e","submitted_at":"2023-03-15T18:10:23Z","abstract_excerpt":"We present IMPACT, a flexible toolchain for nonlinear model predictive control (NMPC) specification with automatic code generation capabilities. The toolchain reduces the engineering complexity of NMPC implementations by providing the user with an easy-to-use application programming interface, and with the flexibility of using multiple state-of-the-art tools and numerical optimization solvers for rapid prototyping of NMPC solutions. IMPACT is written in Python, users can call it from Python and MATLAB, and the generated NMPC solvers can be directly executed from C, Python, MATLAB and Simulink."},"claims":{"count":0,"items":[],"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"source":{"id":"2303.08850","kind":"arxiv","version":1},"verdict":{"id":null,"model_set":{},"created_at":null,"strongest_claim":"","one_line_summary":"","pipeline_version":null,"weakest_assumption":"","pith_extraction_headline":""},"integrity":{"clean":true,"summary":{"advisory":0,"critical":0,"by_detector":{},"informational":0},"endpoint":"/pith/2303.08850/integrity.json","findings":[],"available":true,"detectors_run":[],"snapshot_sha256":"c28c3603d3b5d939e8dc4c7e95fa8dfce3d595e45f758748cecf8e644a296938"},"references":{"count":0,"sample":[],"resolved_work":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57","internal_anchors":0},"formal_canon":{"evidence_count":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"author_claims":{"count":0,"strong_count":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"builder_version":"pith-number-builder-2026-05-17-v1"},"verdict_id":null},"signer":{"signer_id":"pith.science","signer_type":"pith_registry","key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54"},"created_at":"2026-07-05T07:29:38Z","supersedes":[],"prev_event":null,"signature":{"signature_status":"signed_v1","algorithm":"ed25519","key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54","signature_b64":"ugdUe5thszkE8BFyTAycD1NJrGQmk7Hx2XG2NPXCOMZ6bOzY5P4Pwm48AFjHikziv4K+Cn0SwuOas4HQgUVlBA==","signed_message":"open_graph_event_sha256_bytes","signed_at":"2026-08-19T15:29:33.428333Z"},"content_sha256":"820de4e0e3fa7a4c3b71b4d7045c544aa93b11babed5b31d26a989b229ba569f","schema_version":"1.0","event_id":"sha256:820de4e0e3fa7a4c3b71b4d7045c544aa93b11babed5b31d26a989b229ba569f"}],"timestamp_proofs":[],"mirror_hints":[{"mirror_type":"https","name":"Pith Resolver","base_url":"https://pith.science","bundle_url":"https://pith.science/pith/R5I3YN6TDSVJVWPTJ5U3ETEOJG/bundle.json","state_url":"https://pith.science/pith/R5I3YN6TDSVJVWPTJ5U3ETEOJG/state.json","well_known_bundle_url":"https://pith.science/.well-known/pith/R5I3YN6TDSVJVWPTJ5U3ETEOJG/bundle.json","status":"primary"}],"public_keys":[{"key_id":"pith-v1-2026-05","algorithm":"ed25519","format":"raw","public_key_b64":"stVStoiQhXFxp4s2pdzPNoqVNBMojDU/fJ2db5S3CbM=","public_key_hex":"b2d552b68890857171a78b36a5dccf368a953413288c353f7c9d9d6f94b709b3","fingerprint_sha256_b32_first128bits":"RVFV5Z2OI2J3ZUO7ERDEBCYNKS","fingerprint_sha256_hex":"8d4b5ee74e4693bcd1df2446408b0d54","rotates_at":null,"url":"https://pith.science/pith-signing-key.json","notes":"Pith uses this Ed25519 key to sign canonical record SHA-256 digests. Verify with: ed25519_verify(public_key, message=canonical_sha256_bytes, signature=base64decode(signature_b64))."}],"merge_version":"pith-open-graph-merge-v1","built_at":"2026-08-19T15:29:33Z","links":{"resolver":"https://pith.science/pith/R5I3YN6TDSVJVWPTJ5U3ETEOJG","bundle":"https://pith.science/pith/R5I3YN6TDSVJVWPTJ5U3ETEOJG/bundle.json","state":"https://pith.science/pith/R5I3YN6TDSVJVWPTJ5U3ETEOJG/state.json","well_known_bundle":"https://pith.science/.well-known/pith/R5I3YN6TDSVJVWPTJ5U3ETEOJG/bundle.json"},"state":{"state_type":"pith_open_graph_state","state_version":"1.0","pith_number":"pith:2023:R5I3YN6TDSVJVWPTJ5U3ETEOJG","merge_version":"pith-open-graph-merge-v1","event_count":2,"valid_event_count":2,"invalid_event_count":0,"equivocation_count":0,"current":{"canonical_record":{"metadata":{"abstract_canon_sha256":"380d1a306010d8970ad5028f29d9880ef883dcf7b52a625b266fa2618f7cdcde","cross_cats_sorted":["cs.RO","cs.SY","eess.SY"],"license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","primary_cat":"math.OC","submitted_at":"2023-03-15T18:10:23Z","title_canon_sha256":"31e123d41be9d7551693331cbcee7095d6c91a4364a51859d45e3f6fb079ac8f"},"schema_version":"1.0","source":{"id":"2303.08850","kind":"arxiv","version":1}},"source_aliases":[{"alias_kind":"arxiv","alias_value":"2303.08850","created_at":"2026-07-05T07:29:38Z"},{"alias_kind":"arxiv_version","alias_value":"2303.08850v1","created_at":"2026-07-05T07:29:38Z"},{"alias_kind":"doi","alias_value":"10.48550/arxiv.2303.08850","created_at":"2026-07-05T07:29:38Z"},{"alias_kind":"pith_short_12","alias_value":"R5I3YN6TDSVJ","created_at":"2026-07-05T07:29:38Z"},{"alias_kind":"pith_short_16","alias_value":"R5I3YN6TDSVJVWPT","created_at":"2026-07-05T07:29:38Z"},{"alias_kind":"pith_short_8","alias_value":"R5I3YN6T","created_at":"2026-07-05T07:29:38Z"}],"graph_snapshots":[{"event_id":"sha256:820de4e0e3fa7a4c3b71b4d7045c544aa93b11babed5b31d26a989b229ba569f","target":"graph","created_at":"2026-07-05T07:29:38Z","signer":{"key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54","signer_id":"pith.science","signer_type":"pith_registry"},"payload":{"graph_snapshot":{"author_claims":{"count":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57","strong_count":0},"builder_version":"pith-number-builder-2026-05-17-v1","claims":{"count":0,"items":[],"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"formal_canon":{"evidence_count":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"integrity":{"available":true,"clean":true,"detectors_run":[],"endpoint":"/pith/2303.08850/integrity.json","findings":[],"snapshot_sha256":"c28c3603d3b5d939e8dc4c7e95fa8dfce3d595e45f758748cecf8e644a296938","summary":{"advisory":0,"by_detector":{},"critical":0,"informational":0}},"paper":{"abstract_excerpt":"We present IMPACT, a flexible toolchain for nonlinear model predictive control (NMPC) specification with automatic code generation capabilities. The toolchain reduces the engineering complexity of NMPC implementations by providing the user with an easy-to-use application programming interface, and with the flexibility of using multiple state-of-the-art tools and numerical optimization solvers for rapid prototyping of NMPC solutions. IMPACT is written in Python, users can call it from Python and MATLAB, and the generated NMPC solvers can be directly executed from C, Python, MATLAB and Simulink.","authors_text":"Alejandro Astudillo, Alvaro Florez, Jan Swevers, Joris Gillis, Wilm Decr\\'e","cross_cats":["cs.RO","cs.SY","eess.SY"],"headline":"","license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","primary_cat":"math.OC","submitted_at":"2023-03-15T18:10:23Z","title":"IMPACT: A Toolchain for Nonlinear Model Predictive Control Specification, Prototyping, and Deployment"},"references":{"count":0,"internal_anchors":0,"resolved_work":0,"sample":[],"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"source":{"id":"2303.08850","kind":"arxiv","version":1},"verdict":{"created_at":null,"id":null,"model_set":{},"one_line_summary":"","pipeline_version":null,"pith_extraction_headline":"","strongest_claim":"","weakest_assumption":""}},"verdict_id":null}}],"author_attestations":[],"timestamp_anchors":[],"storage_attestations":[],"citation_signatures":[],"replication_records":[],"corrections":[],"mirror_hints":[],"record_created":{"event_id":"sha256:36e52d512b630d9760ac6f3936e184dcd410b9515ee9e51b166a4004923a1c1f","target":"record","created_at":"2026-07-05T07:29:38Z","signer":{"key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54","signer_id":"pith.science","signer_type":"pith_registry"},"payload":{"attestation_state":"computed","canonical_record":{"metadata":{"abstract_canon_sha256":"380d1a306010d8970ad5028f29d9880ef883dcf7b52a625b266fa2618f7cdcde","cross_cats_sorted":["cs.RO","cs.SY","eess.SY"],"license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","primary_cat":"math.OC","submitted_at":"2023-03-15T18:10:23Z","title_canon_sha256":"31e123d41be9d7551693331cbcee7095d6c91a4364a51859d45e3f6fb079ac8f"},"schema_version":"1.0","source":{"id":"2303.08850","kind":"arxiv","version":1}},"canonical_sha256":"8f51bc37d31caa9ad9f34f69b24c8e49a6c083409e1260e7b721c580693fda91","receipt":{"algorithm":"ed25519","builder_version":"pith-number-builder-2026-05-17-v1","canonical_sha256":"8f51bc37d31caa9ad9f34f69b24c8e49a6c083409e1260e7b721c580693fda91","first_computed_at":"2026-07-05T07:29:38.226238Z","key_id":"pith-v1-2026-05","kind":"pith_receipt","last_reissued_at":"2026-07-05T07:29:38.226238Z","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54","receipt_version":"0.3","signature_b64":"1lsm8LhRLBHENn0sqnP9ifTMBJIv5RwtAa5PvjPpcgwfE3WSXjtNNviwXJ9Z5pbqsJnJ02Dyw6QhICszdbT9DA==","signature_status":"signed_v1","signed_at":"2026-07-05T07:29:38.226639Z","signed_message":"canonical_sha256_bytes"},"source_id":"2303.08850","source_kind":"arxiv","source_version":1}}},"equivocations":[],"invalid_events":[],"applied_event_ids":["sha256:36e52d512b630d9760ac6f3936e184dcd410b9515ee9e51b166a4004923a1c1f","sha256:820de4e0e3fa7a4c3b71b4d7045c544aa93b11babed5b31d26a989b229ba569f"],"state_sha256":"369626461bc97b59abb685a87176c85bf8d64df321fe062465c500d30a1ea925"},"bundle_signature":{"signature_status":"signed_v1","algorithm":"ed25519","key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54","signature_b64":"oz4TqPAw6vbwNzOaImlUX1m2qYG6+MkYmIextB6G1NkVMpVJTMAnLder4K9gkZEhRP8en8Gc9ZIeeQ3UoEOMDw==","signed_message":"bundle_sha256_bytes","signed_at":"2026-08-19T15:29:33.432055Z","bundle_sha256":"864cde1bb5e9d13680c4c40f90c7d47cdc6f70863bbb12ec78e1c03f77a025a3"}}