From 51da8be1721bb5a16f1bac487ff3179dfe274d0d Mon Sep 17 00:00:00 2001 From: Janis Hutz Date: Mon, 20 Jul 2026 17:19:30 +0200 Subject: [PATCH] [FMFP] Add small remark on modelling --- ...methods-functional-programming-summary.pdf | Bin 743087 -> 743191 bytes .../parts/06_exercises/02_fm/03_modelling.tex | 3 ++- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/semester4/fmfp/formal-methods-functional-programming-summary.pdf b/semester4/fmfp/formal-methods-functional-programming-summary.pdf index aad4aa67a39716cf841f4107199de2f2f0a25d9c..283fc64da38777e8f242b87c73c787ab5fbd26ee 100644 GIT binary patch delta 12793 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