LinExpr() accepts rational numbers
[linpy.git] / examples / bac2014.py
index 3c69100..cc02126 100755 (executable)
@@ -1,26 +1,15 @@
 #!/usr/bin/env python3
-#
-# Copyright 2014 MINES ParisTech
-#
-# This file is part of LinPy.
-#
-# LinPy is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# LinPy is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with LinPy.  If not, see <http://www.gnu.org/licenses/>.
+
+# This example is inspired from a math question in the French baccalauréat 2014,
+# consisting in computing the intersection of a plane with a line.
 
 from linpy import *
 
 x, y, z = symbols('x y z')
-DF = Eq(x, y) & Eq(z, 6 - 2*x)
-P = Eq(x + y - 2*z, 0)
+plane = Eq(x, y) & Eq(z, 6 - 2*x)
+line = Eq(x + y - 2*z, 0)
 
-print('DF âˆ© P =', DF & P)
+if __name__ == '__main__':
+    print('plane:       ', plane)
+    print('line:        ', line)
+    print('intersection:', plane & line)