From 4ebb8388e18ff5bc37c72f44a12ec01fd442b5a5 Mon Sep 17 00:00:00 2001 From: jverzani Date: Wed, 12 Sep 2018 10:36:15 -0400 Subject: [PATCH 1/4] updates to run under v0.7, 1.0 --- .travis.yml | 4 +++- LICENSE.md | 2 +- README.md | 4 ---- REQUIRE | 8 +++---- appveyor.yml | 35 ++++++++++++++-------------- docs/examples.ipynb | 26 +++++++++++---------- docs/examples.md | 10 ++++---- src/ImplicitEquations.jl | 6 +---- src/intervals.jl | 43 +++++++++++++++------------------- src/plot_recipe.jl | 20 ++++++++-------- src/predicates.jl | 50 +++++++--------------------------------- src/tupper.jl | 16 ++++++------- test/runtests.jl | 2 +- travis.yml | 13 ----------- 14 files changed, 87 insertions(+), 152 deletions(-) delete mode 100644 travis.yml diff --git a/.travis.yml b/.travis.yml index 192e29b..0d27bbb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,8 +5,10 @@ os: notifications: email: false julia: - - 0.6 + - 0.7 + - 1.0 - nightly #script: # - if [[ -a .git/shallow ]]; then git fetch --unshallow; fi # - julia -e 'Pkg.init(); Pkg.clone(pwd()); Pkg.test("ImplicitEquations")' + - julia -e 'using Pkg; Pkg.clone(pwd()); Pkg.test("ImplicitEquations")' diff --git a/LICENSE.md b/LICENSE.md index f6b05c8..48504b9 100644 --- a/LICENSE.md +++ b/LICENSE.md @@ -1,6 +1,6 @@ The ImplicitEquations.jl package is licensed under the MIT "Expat" License: -> Copyright (c) 2014-16: jverzani. +> Copyright (c) 2014-18: jverzani. > > Permission is hereby granted, free of charge, to any person obtaining > a copy of this software and associated documentation files (the diff --git a/README.md b/README.md index e544763..4bd8332 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,3 @@ -[![ImplicitEquations](http://pkg.julialang.org/badges/ImplicitEquations_0.6.svg)](http://pkg.julialang.org/?pkg=ImplicitEquations&ver=0.6) -  Linux: [![Build Status](https://travis-ci.org/jverzani/ImplicitEquations.jl.svg?branch=master)](https://travis-ci.org/jverzani/ImplicitEquations.jl)   Windows: [![Build Status](https://ci.appveyor.com/api/projects/status/github/jverzani/ImplicitEquations.jl?branch=master&svg=true)](https://ci.appveyor.com/project/jverzani/implicitequations-jl) @@ -32,5 +30,3 @@ plot(f ⩵ 0) # \Equal[tab] ``` ![DevilsCurve](http://i.imgur.com/LChTzC1.png) - - diff --git a/REQUIRE b/REQUIRE index 83bb7a9..53db339 100644 --- a/REQUIRE +++ b/REQUIRE @@ -1,5 +1,3 @@ -julia 0.6 -ForwardDiff 0.3.0 -ValidatedNumerics 0.5.0 -RecipesBase 0.0.6 -Compat 0.8.6 \ No newline at end of file +julia 0.7 +IntervalArithmetic 0.15.0 +RecipesBase 0.6.0 diff --git a/appveyor.yml b/appveyor.yml index fe914b1..c34890d 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,13 +1,19 @@ environment: matrix: - - JULIA_URL: "https://julialang-s3.julialang.org/bin/winnt/x86/0.6/julia-0.6-latest-win32.exe" - - JULIA_URL: "https://julialang-s3.julialang.org/bin/winnt/x64/0.6/julia-0.6-latest-win64.exe" - - JULIA_URL: "https://julialangnightlies-s3.julialang.org/bin/winnt/x86/julia-latest-win32.exe" - - JULIA_URL: "https://julialangnightlies-s3.julialang.org/bin/winnt/x64/julia-latest-win64.exe" + - julia_version: 0.7 + - julia_version: 1.0 + - julia_version: latest + +platform: + - x86 # 32-bit + - x64 # 64-bit + +## uncomment the following lines to allow failures on nightly julia +## (tests will run but not make your overall status red) matrix: allow_failures: - - JULIA_URL: "https://julialangnightlies-s3.julialang.org/bin/winnt/x86/julia-latest-win32.exe" - - JULIA_URL: "https://julialangnightlies-s3.julialang.org/bin/winnt/x64/julia-latest-win64.exe" + - julia_version: latest + branches: only: @@ -21,19 +27,12 @@ notifications: on_build_status_changed: false install: - - ps: "[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Tls12" -# Download most recent Julia Windows binary - - ps: (new-object net.webclient).DownloadFile( - $env:JULIA_URL, - "C:\projects\julia-binary.exe") -# Run installer silently, output to C:\projects\julia - - C:\projects\julia-binary.exe /S /D=C:\projects\julia + - ps: iex ((new-object net.webclient).DownloadString("https://raw.githubusercontent.com/JuliaCI/Appveyor.jl/version-1/bin/install.ps1")) build_script: -# Need to convert from shallow to complete for Pkg.clone to work - - IF EXIST .git\shallow (git fetch --unshallow) - - C:\projects\julia\bin\julia -e "versioninfo(); - Pkg.clone(pwd(), \"ImplicitEquations\"); Pkg.build(\"ImplicitEquations\")" + - echo "%JL_BUILD_SCRIPT%" + - C:\julia\bin\julia -e "%JL_BUILD_SCRIPT%" test_script: - - C:\projects\julia\bin\julia --check-bounds=yes -e "Pkg.test(\"ImplicitEquations\")" \ No newline at end of file + - echo "%JL_TEST_SCRIPT%" + - C:\julia\bin\julia -e "%JL_TEST_SCRIPT%" diff --git a/docs/examples.ipynb b/docs/examples.ipynb index 1fbd9b6..e6619b2 100644 --- a/docs/examples.ipynb +++ b/docs/examples.ipynb @@ -4,14 +4,14 @@ {"cell_type":"markdown","source":"

This paper by Tupper details a method for graphing two-dimensional implicit equations and inequalities. This package gives an implementation of the paper's basic algorithms to allow the julia user to naturally represent and easily render graphs of implicit functions and equations.

","metadata":{}}, {"cell_type":"markdown","source":"

The basic idea is to express a equation in $x$ and $y$ variables in terms of a function of two variables as a predicate. The plot function Plots is used to plot these predicates.

","metadata":{}}, {"cell_type":"markdown","source":"

For example, the Devils curve is graphed over the default region as follows:

","metadata":{}}, -{"outputs":[{"output_type":"execute_result","data":{"text/plain":"Plot(...)","image/png":"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666LrVu3xjXXXBNvv/12y8eZU+h0bjGv0NRpbll2fsl65JJLLsn+/Oc/r/i4mZmZbMOGDdlf//rXLMuy7IEHHsh+8IMfdPvwyIn//Oc/2e9///vss88+y7Isy37xi19kX/3qV1s+9h//+EdWr9d7eHTkzfXXX58dOnQoy7Is+81vfpN95StfWfIYcwpZ1vncYl6hqZPc0m5+yV2L8OWXX46xsbHYtm1bRETcf//9MT4+3uejolfOPffcuOWWW+auWr5z586YmJjo70GRSydPnow333wz7rjjjoiIuO2222JqampJVcKcQoS5he5oN7/0NGB985vfjKuuuiruvvvu+Ne//tXyMZOTk3HJJZfMfb5ly5b48MMP48yZM706THLk4MGDceutty57/6lTp+Lqq6+OHTt2xMMPPxyffvppD4+OfpqamoqLLrpobh+agYGB2Lx5c0xOTi54nDmFVtrNLeYVmlbKLe3ml54FrD/84Q/xl7/8Jd5666344he/GN/61rd69aMpqEcffTSOHj0ajz32WMv7L7roojhx4kT86U9/ildffTVef/31+PnPf97jowSKpt3cYl6hab25pWsB65lnnplbGHbo0KHYvHlzREScc8458b3vfS9ef/31lv9v8+bN8c9//nPu84mJiQXvUimfxWMlImL//v1x+PDhePnll+MLX/hCy/83NDQUGzZsiIiICy64IL797W8vO64on5GRkQWVqCzLYnJycm6uaTKnMN9Kc4t5haZOcku7+aVrAevOO++MI0eOxJEjR+Ib3/hGfPLJJ3P3jY+Px9jYWMv/d9NNN8Vbb70V7777bkREPPnkk3H77bd36zDJgflj5a677ooDBw7E+Ph4vPLKK3Heeect+/9OnjwZ//3vfyMiYnZ2Ng4fPrzsuKJ8NmzYEDt27Ihnn302IiJeeOGF2LRpU1x22WULHmdOoamTucW8QsTnbeJOcku7+aUnl8p5//3347bbbotPP/00siyLSy+9NA4ePBhbtmyJiIh9+/bFxo0b47777ouIiN/97nfxwx/+MM6cORNXXnllPP3001Gv17t9mOTA8ePHY2RkJC699NIYHh6OiM/fUf7xj3+MiIVj5fDhw7Fv374YHByMM2fOxNe//vXYv39/DA0N9fNXoIf+9re/xZ49e+Ljjz+OWq0Whw4diquuusqcwhLt5hbzCou1yy2dzi+uRQgAkFjutmkAACi6/wG3j2qOPdsKEwAAAABJRU5ErkJggg=="},"metadata":{"image/png":{"height":480,"width":600}},"execution_count":null}],"cell_type":"code","source":["using Plots, ImplicitEquations\npyplot()\n\na,b = -1,2\nf(x,y) = y^4 - x^4 + a*y^2 + b*x^2\nr = (f ⩵ 0) # \\Equal[tab]\nplot(r)"],"metadata":{},"execution_count":null}, +{"outputs":[{"output_type":"execute_result","data":{"text/plain":"Plot(...)","image/png":"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"},"metadata":{"image/png":{"height":480,"width":600}},"execution_count":1}],"cell_type":"code","source":["using Plots, ImplicitEquations\n\na,b = -1,2\nf(x,y) = y^4 - x^4 + a*y^2 + b*x^2\nr = (f ⩵ 0) # \\Equal[tab]\nplot(r)"],"metadata":{},"execution_count":1}, {"cell_type":"markdown","source":"

The f ⩵ 0 expression above creates a Predicate that is graphed by plot. Predicates are generated using the function Lt, Le, Eq, Neq, Ge, and Gt. The infix unicode operators (\\ll[tab]), (\\leqq[tab]), (\\Equal[tab]), (\\lessgtr[tab]) or (\\gtrless[tab]), (\\geqq[tab]), (\\leqq[tab]) may also be used.

","metadata":{}}, {"cell_type":"markdown","source":"

For example, the Trident of Newton can be represented in Cartesian form as follows:

","metadata":{}}, -{"outputs":[{"output_type":"execute_result","data":{"text/plain":"Plot(...)","image/png":"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"},"metadata":{"image/png":{"height":480,"width":600}},"execution_count":null}],"cell_type":"code","source":["## trident of Newton\nc,d,e,h = 1,1,1,1\nf(x,y) = x*y\ng(x,y) = c*x^3 + d*x^2 + e*x + h\nplot(Eq(f,g)) ## aka f ⩵ g (using Unicode\\Equal)"],"metadata":{},"execution_count":null}, +{"outputs":[{"output_type":"execute_result","data":{"text/plain":"Plot(...)","image/png":"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/WEPy1x++eXyURqXy7Vnz54OHTqoKA0A8E/MEbahbt26eTwebyNN05yLDuvr66urq1XXCADJjh5hG3r33XeXL18um/fee29dXZ1s2o/SqKgLAHAUQdiGOnfuPHXqVNmcOXOmz+eTTedu3QAAVQjC6LH3I3W+wrMzAKAcQRg9LpdLPimjaZoQ4uGHH27Xrp3dTElJefHFF1lfAQBRRhBGj314ofOVt99+29l84YUXnDuXAgCigCCMnunTp//+97+XzbDt1uwpQ4IQAKKMIIyee+6555577pHNtLQ0v9+vsB4AgEYQquWcERRC3HPPPYZhCCHq6+s7der0+OOPK6wNAJIEQaiMy+UKmzJ84YUX5LXX6yUIASAKCEJl7rjjjnfffVc2d+3a5XymNBgMqigKAJIOQajMU0899dRTT8mm2+12rjJkHQUARAdBGCuanmX/u9/9Tl536NBh2rRp0a0IAJICQRhDnFuPCiGefvpp2czLyyMIAaAtEISx4uabb16zZo2maUKIYDBYUlIipwyFEM7dugEAEUQQxoo//vGP9oUQYuvWrQMGDHA+U8o5FQDQRgjCWKTrumVZYSOlDz/8sGx26dLl1ltvVVEaACQagjAWeTyesFeCweBDDz0km2eccQZBCAARQRDGorS0tCuvvHLjxo12MxgMlpaWOhdUlJWVKSoNABINQRiL3G73smXLZHPTpk2DBw+WI6VCCFYZAkCkEIRxQAghhHA+OxMKhZ588knZ7NGjx3XXXaeiNACIewRhHGjXrp2u685eYENDw/33329fCyEGDRpEEAJAyxCEcaBTp07nn3++PL8wGAweOXLEecO+fftU1AUAiYAgjAOZmZmffvqpbP7lL38ZN26cc3EFx/kCQIsRhPHHHiN1Thl6vV515QBAfCMI409WVpamac4N2EzTLC4uljekp6fn5uaqKQ4A4g1BGH/q6upM05TPzggh9u/ff/bZZ9tN0zTHjh37zjvvqCsQAOKJceJbTsbSpUv79euXk5MzYsSInTt3Rvabw3b66adnZ2e3a+T1enVd9zcKBoNbt25VXSMAxI1I9gj37ds3YcKEjz766Nxzz503b96UKVPWrVsXwe8PW69evdavX19RUWE3P/jggyeffNJ5nGFaWpqi0gAg/kQyCHfv3n3DDTcMHTpU07RJkyY5j1+X6uvr5TELTv379+/bt28Ei4lfQgi/3+/z+Y5zz5lnnnnmmWfa1yUlJbquywdH7f/8wIED8ua0tLSMjIy2KziR2O88G/dEn/3O8/xz9Pn9frfb7Xz4Lk653e4W//xEMghHjRo1atQoTdNM05w9e/b111/f9B6fz7d8+fKmr7tcrjPOOCOCxcQvIYTP52toaGjm/WVlZWGn22/btq1nz572dSgUmjRp0jPPPBPhKhOU/c4ThNHX0NDQ0NBAEEaf/baHfYbEI5fLFRNBaFu1atX06dN/9rOfPfbYY02/mpeXt2jRooj/oYlECBEIBJr/2OfAgQOzsrLkT0BdXV0oFAoGg/K77dixg4dIm8nv9+fm5hKE0RcMBnNzcwnC6LMsKysrq+mJN0klkkEohJg5c+a6devefPNN+RAj2lpBQcHq1aurqqrs5jvvvDN//nzn73fl5eXz58+XzcGDBw8cODDaVQJArIpkEK5fv37JkiUbNmxISUmpra3VNC0zMzOC3x/HMmjQIHm9d+/eBQsWyN+sLcsqKiq666677GYoFLrvvvsIQgCQIhmEhYWFYaNwzm3AEB3nn39+bm6u/YuIpmnBYNA0TeejNxs2bFBUGgDEokiuI5w1a5b4oQh+czRT7969S0tLGxrdfffdhmG4GhmG0a5dO9U1AkAMYWeZBOd2u8POMvz+++8XLlwom//yL//Su3dvBZUBQGwgCBNcTk6Oc5WhaZpffPHFN998I5vPPPMMQQggmUV4izXEmosuush5NoWu65Zl1Tfy+/3r169XWB4AKEcQJrjBgwfX19cHG02aNMkwjJRGhmHk5eWprhEAVGJoNLnYeynJKUNd13fv3v3GG2/IGy644IJu3bopqg4AFCAIk0tWVpZhGPIsQ9M0V65cKfdGDwaDf/jDHwhCAEmFodHkcuWVV9oH+drs65pGPp/v888/V10jAEQVQZhcRo0aZTmMGTMmbMowPz9fdY0AEFUMjSa1plOGRUVFixcvljcMHz68Y8eOiqoDgGggCJOa1+sNmzJctGjRihUr7GYgEFi+fPkll1yirkAAaHMMjSa1sWPHhk0ZBoPB6kY+n2/Tpk2qawSAtkUQJrWJEycGHAYNGuScMnS5XNnZ2aprBIC2xdBosktJOfozEDZlaBjGli1bli9fLm8YOXIke3YDSDAEIY6yj6dwThnOnz//f//3f+1mQ0PDhg0bBgwYoK5AAIg8hkZx1BVXXKE7CCH8fn9Vo0AgsGvXLtU1AkCE0SPEUTNmzPi3f/s32ezfv/93332n67rdtCzrhRdekIsrUlJSnn/+ebYqBRDvCEIcpet6RkaGbLZr1855kKGmaWvXrpXXLpfroYceIggBxDuCEMf04IMPPvnkk7K5adMm0zSdHcTa2lpFpQFAxBCEOKbx48ePHz9eNvPz8ysqKpw3BAKBqBcFABFGEKK57M1InT3CJ554Ijc3V371xRdf9Hg86goEgJYgCNFcXq83bMpw2bJl8lrX9blz5xKEAOIOQYjmmjVr1ksvvSSbW7Zs0TRNdhBN02SkFEA8IgjRXFOnTp06dapsZmZm1tXVOW/o3r27XIyfkZFRUlIS1foAoEUIQrRQZmamswsYDAYbGhpkMywjASBmEYRooU8++WTlypWyec899zhnEGXXEABiHEGIFurbt2/fvn1l895773WGnxBCRVEAcNIIQkSGYRihUEg2hRD5+fmy2aVLl82bN6uoCwBOgCBEZKSkpDiHRk3TrKyslM36+noVRQHAiRGEiIw1a9YUFhba18FgcNasWc7RUcuyNm7cKJvp6el9+vSJcoUA8KMIQkTGkCFDhgwZYl/X19fPmjXLOWUYCAQuvvhi+9o0zU6dOv3jH/9QUCUANEEQIvLcbnfXrl3l0Khpmg0NDdXV1fKG77//XlFpABCOIETkud3u//u//5NBuGfPnjFjxjhnEIUQM2fOlM2zzjrrlltuiXaVAKBpGkGINpKfny+fGk1LS5M7sdl8Pp/zgKe+ffsShABUIQjR5vLz8y+77DK5fCIQCBw8eFDOIAohDh06pK46AMmOIESbS01NXb58uWwWFhZefPHFrLgHECMIQqjhDMJAIPDII4/IZt++fa+55hoVRQFIRgQhoi0vLy9syrC2tvbBBx+UzREjRhCEAKKGIES0de/efejQod9++63d9Pl8lZWVzmjcu3evmsoAJCWCENGWnZ29du1a2Xzrrbduuukm2RRClJSUnHnmmfKVSZMmOfuLABBZBCEU69ixY9iG3aFQaM+ePbL56aefqqgLQLIgCKHYyJEj586dK4dDt23b9uGHH8qvCiGqqqqcg6U5OTk5OTnRrRFAIiMIoZhhGHfccYdsvvTSSx988IHzhq+//rp///72dSAQuPfee5944omolgggoRGEiC39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"},"metadata":{"image/png":{"height":480,"width":600}},"execution_count":1}],"cell_type":"code","source":["## trident of Newton\nc,d,e,h = 1,1,1,1\nf(x,y) = x*y\ng(x,y) = c*x^3 + d*x^2 + e*x + h\nplot(Eq(f,g)) ## aka f ⩵ g (using Unicode\\Equal)"],"metadata":{},"execution_count":1}, {"cell_type":"markdown","source":"

Inequalities can be graphed as well

","metadata":{}}, -{"outputs":[{"output_type":"execute_result","data":{"text/plain":"Plot(...)","image/png":"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"},"metadata":{"image/png":{"height":480,"width":600}},"execution_count":null}],"cell_type":"code","source":["f(x,y) = x - y\nplot(f ≪ 0) # \\ll[tab]"],"metadata":{},"execution_count":null}, +{"outputs":[{"output_type":"execute_result","data":{"text/plain":"Plot(...)","image/png":"iVBORw0KGgoAAAANSUhEUgAAAlgAAAGQCAIAAAD9V4nPAAAABmJLR0QA/wD/AP+gvaeTAAAgAElEQVR4nO3de3SUZWLH8fc2kwlJIAQMkBCQSyBACBAgEEJCuAVCSMKdyDUCImAEYZFFVHYVLyDoqtRLS8vx0qo9eqDWsvUcdZW1bu1/do+2Ys/SPe7x4KkXynIPmfftH4+8fU0ymEzemed9Z76fPzjj6zD8Nhvz43nf56JalqUAAJCsNNkBAACQiSIEACQ1ihAAkNQoQgBAUqMIAQBJjSIEACQ1ihAAkNQoQgBAUqMIAQBJjSIEACS1uBbh1atXP//883j+iTESDodN05Sdwk8sy2ppaZGdwmf4Nussvs2i0NLSwkabcS3C06dPL1y4MJ5/YoxcvHjx8uXLslP4iWma33//vewUPvPnP/+5ublZdgo/uXbt2rlz52Sn8Jlz585du3ZNdgrJuDUKAEhqFCEAIKlRhACApEYRAgCSGkUIAEhqFCEAIKlRhACApEYRAgCSmiE7wI384z/+4zfffCM7RTsuX76saVpKSorsIL5hmubFixczMjJkB/GTTz75pG/fvn379pUdxDdaWlquXLmSnp7uyqf913/9V/fu3fv06ePKp8XfH/7wh27duvXr1+/Gb7tw4UIoFDKMTnfB6dOnQ6FQTk5OF9//3//938FgMDc3137d3NwsrkyaNKmwsLCzwaLg6SLctWvXl19+qWmeG7aKHYlUVZUdxE8sy+Ir1imXL1/WdT0YDMoO4hvu/od55coVVVX9+/fdDuaP+ovW2a/PlStXFEUJhUI3uC5eC7quP/LIIxShYpomO5khaRmGce3aNba/ksUwjJaWFv9uXqrrekzzd/bzdV0Ph8MXL168wXVN08T+umL8EwgEXI0ckaeLEACQ2MS9IjEktSxL1/VAIPDwww/v2LEjbhkoQgCATJZl2XdoFy9evHr16lGjRsUzAEUIAJBGvS4vL2/s2LGNjY3V1dVxzkARAgBiLtKph+FwWNwX3b59+7Zt2+Ib6geem5AJAEg8zompmqaJUaCu66FQ6NChQ+FwWFYLKowIAQBx4BwRioeCqqrW19evWLFizJgxEoMpFCEAID7sQaGqqrm5uYWFhevWraupqZGbSqEIAQDxYQ8KLcvasWPH9u3b5eaxUYQAgGiIh3ytLjq3qnHeDjVN014juH37dk/tM0URAgCiYVlW251lVFW1+6/V65qamoaGhuLiYk+1oEIRAgBcpGlaOBy2X5umqapqnz59CgoKNmzYUFtbKzdeuyhCAIBrnLdD7TWCu3btuuuuu+SF+gkUIQDANfbGoaqqBgKBBx98cOvWrXHbPjs6FCEAwDX2GsHq6uqlS5eWlJS0PXrJayhCAEA0VFUV5yWJs5Ns2dnZQ4cO3bBhw4IFCyRF6xyKEAAQDcuyxLwY+xxBcV/0nnvu8fITwbYoQgBAp4n7n5qmiXuhmqYZhvGLX/yiqanJ+/dCW6EIAQCdpqqqaZpiRKiq6uzZsxctWjRlypTu3bvLjtZpFCEAoNN0Xe/Xr1/37t2vXLmSlZV1++23L1y4UHaoKFGEAJCAIp3/55bm5uaysrLXXnstpn9KfHAeIQAkoM5uY9Z219C21+1zBMUawQkTJnQpomcwIgQAdJSYIzNz5sz6+vqKigrZcdxBEQIAbkTsnS1+7dmzZ//+/W+//fYlS5bIzuUaihAAEJFYHaFcP3Tpl7/85datW2WHchlFCAD4/3WByo8n2ojruq7v3r1706ZNmZmZ8jLGCkUIAGi9LtB5jmBlZeX8+fNnzJiRm5srNWOsUIQAgB+xZ5xmZGT069dv06ZNy5YtkxsppihCAIDiHAKapim2TNu3b1/iPRFsiyIEAPz/KNCyLF3X77777o0bN/bq1Utuqvhwvwg//fTTSZMmXbx40fVPBgDEiBgRappWVlZWXV1dVVU1aNAg2aHixOUiPHfuXGNj46VLl9z9WABAp4jZnm33lzFN074uXttrBNPT02+66aYtW7Y0NDTIiCyNm0VoWVZjY+Pu3buXLl16g/dcuHCh7fVgMGgYrcPEeq88AEhU4lFf25+iuq6Hw2F7/Ce6UDwRfPjhh5uampQ2B+36glj4ER03i/DAgQNDhgy58XYDZ86cuemmm9pe37lzp/g/wElM5AWSE38RlMvvX/9I+VutEVQURVXVjRs3rly58qabbvrmm2/ilM9tmZmZKSkp0f1e14rw/ffff/vtt995550bvy0nJ+c///M/O/iZbceIQPLo7KbJcJffv/6R8re6XlJSMmfOnPnz55eUlMQllxe51jTvvffeyZMng8Gg+EdVVT/88MOpU6e69fkAgK6zR4GpqalZWVnr169vbGy0f3QnKSsGIn3sf/zHfxQUFHT8c/Lz82V/eQBpuCMil9+//rqui4d/zrOTBF3XU1JSDh8+bFnWt99+e/XqVXd+9PuWv/+fBgBEIn7KK9cnxYiLmqY1NTWtW7cuUfdLi0JMitDy+UNmAEg8qqpOnDhxxowZ9fX1RUVFsuN4CCNCAEhA1o9nh4ZCoR49ejQ1Na1evVpiKm+iCAEgMYkJomKN4KFDh+644w7ZiTyKIgSAdvj9EY94QKhp2ubNm9euXTtw4EDZibyLIgSA9rW7RZlbrOvLGLr4fud1UX7itaqqY8eOLS8vX758+YQJE1xMnngoQgBoh9h+M3bjQsMwWlpaOv75zq3RIl23XweDwfT09LvuumvNmjUu505EFCEA+JhzCGiapmEYPBHsLIoQAPzNur6NiaZpGzZsWLVq1ZAhQ2SH8hOKEAD8TTzLHDVqVGlp6cqVK8vKymQn8hmKEAB8INLTRHE7NDU1dceOHY2NjfENlSAoQgDwAed8UV3XxZZpuq4bhvH4449v2bJFXjTfowgBwAecI0Jx4q6maY2NjStWrBg+fLjEYAmAIgQAH3AualRVdcSIERMnTly9enVFRYXcYAmAIgQAf7AXCwaDwZ/97Gfr1q2TnShBUIQAIIFY/6dpWtvrimOnGPu6vUbwiSee2Lx5czyjJjyKEAAkEDvXhMPhVtdbnR3ofL1q1aqGhoaRI0fGNWgSoAgBwEOcs0PtM+WHDBkyduzYNWvWTJ8+XWK2REURAoCHOG+HhsNhTdN0Xd+1a9eGDRskpkpsFCEAeIg9O1SsEeSJYBxQhAAgQaSdYuxzBBsaGpYuXTpmzJg4B0tCFCEAyKGqqq7riqK0mjIzePDgwsLCxsbGmTNnSoqWXChCAJBAzBptaWlRrp8jaP+rn//85xs3bpQXLem0XsICAIgD0zTFOkKxcahhGKFQ6LnnnjNNkxaMM0aEACCBOEdXURTTNDVNW7JkyeLFi4uLi2XnSkYUIQDIISaI5uXlFRQUrFu3bvbs2bITJSmKEADaYW/pEiP2Q8E9e/bcfvvtMf2zcGM8IwSAdrTdBfTGDKP9cYXzuq7rYhSo63ooFHrmmWeuXbvGE0HpGBECQAw51wvaawQXLVq0YMGCkpISsXwCclGEABBbzu1Dc3Nzhw4dun79+jlz5kiMBCeKEABiy3my0v33388TQa+hCAHABWIVhHiy2OocQbFr6MGDBzds2BAMBuVlRPsoQgBwgaZpLS0tYq6p2DXGvl5XV1dbW1tWVpaamio1I9pHEQKAy8SBuqqqZmdnDxo06LbbbquurpYdChFRhADgglbnCIplEg888ACrI7yPIgQAF1iWJabDqKpqGMYjjzyyfv36bt26yc6Fn0YRAkA7Ip0XeOPfomlaTU1NTU1NRUVFZmZmLILBdRQhALRPnA7R6qKYDiOut9qG7aabbsrLy7v99ttramriFhJdRxECQDvEzM9WR+Yq188OFNfFpBjxQtO0hx9++LbbbpOQFV1DEQJA56jXibWDuq7v27fv1ltv7d69u+xoiAZFCACdIx4fihacM2dOdXX1jBkzsrOzZedClChCAOgEe3ZoVlZWTk7O5s2ba2trZYdCl1CEANAO5wahbbdM0zTtwIEDGzZskJYP7qEIAaAdzgrUNM3uQsMwfvnLX65ZsyYrK0tmPriHIgSAdrRaRyjWCM6aNWv27Nlz5szp37+/rGBwHUUIAO0TKyjErz169Ojbt++WLVvq6+tl54LLKEIAaJ9oQbFA4tChQzwRTFQUIeBRzskaiD97pfz999+/atUqVkckMIoQ8LQodrz0COeZfF74/Ejvd1533gvVNG369OkzZ86sqakZMmSIO6HhSRQh4FF+Hwvqut7S0uKdz4/0fud1e8u0jIyMXr16NTU1LVy40JW08DKKEEBScw4H7S3TfvWrX61fv15uMMQNRQgAP9wU1XV99+7dK1euzMnJkZ0I8UMRAoCiqmp5eXllZeWCBQtGjBghOw7iiiIEkBRusGVaWlpaZmbm1q1bFy9eLC0f5KEIASQFZwXqui4mxei6ruv6008/vW7dOsn5IA9FCCAptBoFiieCO3fubGhoGDBggMRgkI4iBJBE7JWCpaWlZWVlS5YsGTNmjOxQkIwiBJBcUlNTMzIytm/fvmTJEtlZ4AkUIQBfEgO7ttsO2Afn2q/Fr6ZpGoah6/pf/MVf8EQQThQhAF8SDdd21zR7dxj7tWhBXde3bdu2bNmywYMHxz0sPI0iBJBQnEUohoaqqk6YMGHy5MnLly+fOHGi1HTwIooQQEJxjhHD4XAwGExLS9u5c+eyZcskpoKXae5+3JtvvllYWJiZmVlRUfHFF1+4++EA0BHi2aFhGKFQ6Pnnn//+++9pQdyAm0X45Zdfrlq16siRI2fOnKmrq7v11ltd/HAAcIp0BpNYI6hp2pYtW955552ampo4B4PvuHlr9PTp0w0NDaWlpYqirF27dv/+/W3fc+nSpRdffLHt9dGjR48cObLVRftGPwC0JY6PV378s0JV1aKiouLi4sWLF0+YMEFRlCtXrkiL6HlXr14NBAIJ8MM2EAjouh7d73WzCCsrKysrKxVFCYfDe/fuXb58edv3XLly5a233mp7Xdf1QYMGtbro3yNJga7j+//GxKzRcDisKIqu6+KFuB165513Llq0SFGUy5cvS07peZcvX7a/er4mdsuL7ve6P1nm3Xff3bVrV1VV1UMPPdT232ZlZb3xxhsd/Kio/1cBCcDvB/PGmnMdoVgjaBjGwYMHm5qaZEfzE9M0MzIygsGg7CAyuVmElmXt2bPno48+eu2114YNG+biJwNAW2LQLHYNvf322+vq6vLy8mSHgv+4WYS/+93vjh8//vHHHxuGceHCBUVR0tPTXfx8AHASI8JRo0aNHTt25cqV48ePP3/+vOxQ8B83i/CDDz44depUz5497Ss85ACSVqznX4TDYV3Xg8HgPffcs2LFCkVRmpubY/onIlG5uXzi3nvvtX7MxQ8H4C9iPmfHGUb7fy93Xtd13blG8G/+5m8uXbokWhCIGjvLAPC0ds8RXLdu3YIFC4qKiiQGQ8KgCAF4nT2BVtO0/Pz80aNHr1mzpqysTG4qJAyKEIDXiUGhuCl67733rlq1SnYiJBSKEIAniH3R7J1iWp0jGAgEnnvuubVr18qOiQREEQLwBFVVw+GwmGsq+s8+R3Dt2rW1tbXFxcWyMyIxUYQAPMc+UHfIkCEjRoxYu3ZteXm57FBIWBQhAE9odY6geLF3797Vq1dLSoRk4fJ5hAAQNXuNYGpq6osvvmiaJi2IOGBECCAmOrulhr1G8JZbbpk/f/6kSZNiFAxohSIEECuqqrY9Q8Y+OElx3AIVbx44cGB+fv769eunTZsWz5xIchQhgJgQ6x9aWlpaXTcMo6WlRVwXk2Lsf/Xggw9yLxTxxzNCAHElVgdqmqbrumVZYtfQo0ePNjc3s1IeUjAiBBBv4vGhWCO4bNmy6urqsrKySJtuA7HGdx6AeBOzQ/v37z948OANGzZMnz5ddiIkNYoQQExEOo8wHA6LTbQffvhhngjCCyhCADHhnAijaZq4HappmmEYTz/99MqVK0OhkNSAwA8oQgAx0WododhTe8mSJVVVVdOmTUtLS5MVDGiFIgQQK/Y5goqi9OvXb+DAgRs3bpwxY4bESEBbFCGAmLAsy74dqqrqY489xuoIeBNFCHiUaZqiQmL0+fZpt118v/O683aouBcaCAQef/zxFStWcC8UnkURAh4lzueL6ed3ajvQSO93XrdP0xW7htbX18+aNWvWrFk9e/Z0JzQQAxQh4FGxGwsKuq633f8sivc7r9szRbOzs3Nzczdt2jR79mxX0gKxQxEC6JJW5whqmqZp2hNPPLFy5UqJqYCOowgBdJUYvIqjBA8ePLh8+fIePXrIDgV0FEUIoEMiPVAUs0M1TZs/f/6MGTPmzJnTp0+fOGcDuoIiBNBRYo9QRVFM03TOi+nVq1e/fv3uuOOOqqoq2RmBTqMIAXSI6DwxLtR1XcxoFU8En3rqKZ4Iwr8oQgAdIsZ/iqKoqipGhIZhPProo0uXLu3du7fsdED0KEIAHSW6UKz0r66unjZt2rx58wYMGCA7F9AlFCGAjhIjwszMzJtuuqmpqWnu3LmyEwEuoAiBJHWDLdPsi/Z0GLHNjWEYqqo+88wzK1asiHdcIGYoQiBJtd0dVLAnwijXd4oRXWgYxr59+5YsWdK3b994ZwViiSIE8CPOMaI9O6aqqmrq1Km1tbVDhw6VFw2ICYoQwI84b4eaptm9e/esrKxt27ZVV1fLjgbEBEUIoB2qquq6rmna888/f8stt8iOA8QQRQgkqUhbppmmKQ5R+sUvfrFw4cK8vLw4BwPijCIE8KNzBFVVnTFjxpQpU+rr60eNGiU7GhBzFCGQpJyTYuxzBNPS0jIzM7dv315TUyMvGhBXFCGQpJxbpoXD4UAgoGnaX//1Xzc0NMiOBsQVRQgkL3tqqGEYe/bsqa+vHzRokOxQQLxRhEBSU1W1vLy8pKRk0aJFRUVFsuMAElCEgEeJh3Ztt0CL5AZbpint7SMTDodTU1PT09N37txZW1vrSmbAjyhCwKPEBJZIixzaMgyjpaWl7fud1zVNE2cKiieCR48e5YkgQBECCc5ZjaIFDcO4++676+rq8vPzJQYDPIIiBBKffb9UVdVJkyaNHz9+6dKlY8eOlZsK8AiKEEh8YlCYkpLSrVu3e+65p66uTnYiwEMoQiBBiLUQmqYpimKfnWSvEdR1/YUXXli+fLnsmIDnUIRAghDNJ44StM8RNE1T1/W77rpr/vz5I0aMkJ0R8CKKEEhAqqqK0eG4cePGjBnT0NBQXFwsOxTgURQhkCDEukNB3A5NSUm577776uvrJaYCvI8iBBKEGAUqimIYhq7rL7744rJly2SHAnyAIgQ8quNL6QWx+t4wjKampnnz5rFfGtBBFCHgXZqmiVmgTuFw2J4dKqbG2G8uLCwsLCxcsWLFhAkT4hoU8DOKEPAosfLB+eRPEFumiev2OYK6rhuGIc6Ul5AV8DOKEPAZy7LEcFCsjhBrBHkiCESNIgT8x7lGcNOmTXPnzmV1BBA1ihDwHzFBdOTIkQUFBatXr544caLsRICPUYSAR7V9OijYk2UefPDBRYsWxTkVkHhaT0gD4BHO+aK6rmuapqpqIBAIhUJ///d/f+3aNVoQcIXLRXj27Nna2tqsrKy6urqzZ8+6++FAUml1jqBpmpqmrV+//pVXXikrK5MYDEgwLhfhgQMHBg4ceObMmQEDBjz22GPufjiQbMQoUAwNhw8fXl1d3djYuHDhwpycHNnRgMThchEeP368qakpJSWlqanp2LFj7n44kFTEKFD8aprmQw899NZbb02aNEl2LiDRuDxZ5quvvho4cKCiKGJc2PYN3333XbsLfhctWjR//vxWF8+fP6/rursJ0XHiNDvZKaIX6/yd/fxI73deF6/Fr6ZpGoZhGMbzzz8vjtLlccONNTc3X7hwoe1ePLiB//3f/21paQkGg7KDdFV6enogEIju97pchPZ/0va5aK2kpqYuXry47fVRo0alpqa2uhgKhdr9EMSH+FksO0X0Yp1f07ROfX9Ger/zushsrxFcsWLF7NmzS0tL2/7XgbZ0XQ+Hw3ytOiU1NTU1NTUBirArfwFyuQhzcnL+9Kc/5efnf/XVV7m5uW3f0K1bt1WrVnXw06Kud7iisz/ovUbX9ZaWlth9vr29WQdFGj46P0fTNDFHZvDgwXl5eevWrZs2bVrXoyYJTdOuXbsWCoVkB/GTlJSUUCiUAEXYFS7fQ6itrT169KhlWUePHuUUNKAjWp0jaFmWZVn79+8/duwYTwSBOHC5CPfu3fv73/8+Ly/vs88+u++++9z9cCAhiXmhqqoahhEKhV555ZUrV660+wQBQCy4fGs0MzPzxIkT7n4mkBginS8o5oXqur569erp06dPmTIlye9TAXHGFmtAnNgjP+X6rtn25LIBAwbcfPPNGzZsmDJliuyYQNKhCIH4sR8HivmNyvUZNE888QT3QgFZKEIgTlqdIyiO0j1y5MjChQuZ8Q9IRBECcSJOnLdb8JZbbpk2bVp5eXl6errsaEBSowiB+BHnCObk5PTv33/Tpk3snQ14AUUIRKmz29aEw2ExWebpp5/mBCXAOyhCIEqRdpaxJ8Iojp1iNE3Tdf3ZZ59dsGBBRkZGXIMCuCGKEIgty7J0XV+6dGl5efmMGTN69eolOxGAH6EIAffZawQty+rTp0+/fv02b95cUVEhOxeAdlCEgMvEZqHK9WN1n3vuuXaPHgPgERQhECWxO4xYGtjqHEHxRPDw4cN1dXVZWVmykwK4EYoQiJLoPHuDGOc5ggsXLiwrK5s1a1a/fv1kxwTwEyhCIErO8wXtGaS9e/fOzs5uamriHEHALyhCIEr2aRJiyxjDMBRF+au/+iueCAL+QhECURJFKMaFgUDgV7/61fz587Ozs2XnAtA5FCESVqTz/9ylaVptbe3kyZOrqqoGDhwYhz8RgLsoQiQysbdnB98sZru0fb/zuvMcQcuyevbs2bt3723btlVWVrqbHEDcUIRIWKKrOj4uNAyjpaWl7fud1+0t08QTwaNHjy5YsMDV1ADijSIEfoJzUoz4R8MwDhw4UFNTk5ubKzUaABdQhECHaJq2ePHiQYMGXblypXfv3vPmzRs2bJjsUABcQBECP03cZS0qKrrvvvtkZwHgMooQ+IGYAmPf/7Svh8PhQCCgquro0aPlpQMQKxQh8APn5BqxU4y4YhjGww8/XF1dzeoIICFRhEA7xLhQVdWqqqoJEybU1tYWFBTIDgUgJihC4AfONYKmaaanp3fv3v3uu++eOXOm7GgAYogiBFozDEPTtL/927+tr6+XnQVAzFGESFid3WJNPCA0DOOBBx6YM2fOkCFDYhQMgKdQhEhk7W6Z5twsW5SfeK1pWkVFxdixY+vr60eOHBn/tACkoAiRsCJtsebcMk3X9XA4bFlWt27d0tLS9uzZM2vWLBlhAUhDESLp2ENAcY5gMBhUVfXVV1+tq6uTHQ2ABBQhko59O9Q0TcMw9uzZU1VVxeoIIGlRhEg64sGhpmlTpkwZPXr0kiVLRo0aJTsUAGkoQiQs0zQVx6QY+3o4HE5JSUlNTb3//vtnz54tLR8Ab6AIkbDENmn2pBjxWjwRfP3112tra2UHBOAJFCESlnMUKFrQMIxdu3bNmjWL7bMB2ChCJDJ7EaGmaRMmTBg5cuSyZctoQQBOFCESlr2IMBAIBINBsV+M7FAAPIciRESWZWma1nZnFreITa47/vmR3u+87tw4WzwR1DTt9ddfnz9/vsvpASQKihARifXmsft8MZml6+93XherA+01gjt27JgxY8a4cePcSQwgEVGEkKazY81I73det4eG48aNGz58+C233FJUVNSVkAASHkUI32s1O1TXdXGm/Ny5cyWmAuAXFCESgaZplmUFAgGeCALoLIoQvhHpfEH7HME777yzsrKypKQkzsEA+BpFCN8QG4RqmqYoSjgctmeHKooyevTooUOHrl69esyYMbJjAvAZihB+YpqmmCDaaqbo/v37q6urpUYD4FcUIfxEDAfF6gixRvCNN96oqamRnQuAj1GE8BN7jaCu65s3b66oqBg/frzsUAD8jSKEb4idbhRFKSgoGDRo0Nq1a1kpD6DrKEJIE2kWaCT2Q8FDhw7NmzcvBokAJCNNdgAkr0g7xei67nwt9jsNBAKhUOif/umfTNOkBQG4iBEhPMc5UrQsSzwR3Lhx49SpU4uLi2O3CTiA5EQRwnPEekF7jWB+fv7AgQPXrVtXXFwsOxqABEQRwnPEKND+xyeffJJ7oQBihyKENGIWqJgI6jxH0DTNQCCg6/qrr75aXV0dCARkJwWQyChCSCPOOxSDP+c5grqu33rrrVOmTJk4cWJKSorsmAASHEUITxDnCFqWNWjQoP79+2/cuJGV8gDigyKENK3OERTLJJ555hl2DQUQTxQhZBLzQjVNMwzj5ZdfnjNnTlpamuxQAJILRYiIOrvzS3R/hK7ra9eunTx5cmlpaffu3WP9JwJAKxQhbkTcruzgm8PhcLvvd14Xr8WNUMuy+vfvn5OTs2nTpokTJ7ocHQA6xuUt1t58883CwsLMzMyKioovvvjC3Q9HnIk5nOEO03W93fc7r9vnCIpV80eOHPm3f/s3WhCARG4W4Zdffrlq1aojR46cOXOmrq7u1ltvdfHD4V/2ekFd18W90GAw+NJLL3399dczZ86UnQ5AsnOzCE+fPt3Q0FBaWpqamrp27dpTp065+OHwNdM0LcsSI8IVK1Y8/vjjU6dO7d27N4vlAUjn5jPCysrKyspKRVHC4fDevXuXL1/e9j1fffVVu0ukd+7c2dTU1OpiS0uLi/EgkXhA2KdPn969ezc0NIhzBM+cOSM7l6edO3cuFAqxpUDHXbt27cKFC83NzbKD+MnZs2cvXryYAH8l7dmzZygUiu73drUICwoKxMjPnmH47rvv7tq1q6qq6qGHHmr7/pycnE8++aTtdbGlVutwBnN5/ER8D4jOa7VG0DAMy2urYfEAABBDSURBVLJeeOGFuXPnSsvnN6FQKDU1Ner/tpNQc3Pz+fPne/XqJTuInwSDwYyMjGAwKDuITF1tms8//9x+bVnWnj17Pvroo9dee23YsGHtvl9VVf7DTlTOChSTQsVFwzD+8i//sri4ePjw4ZIjAkAbbg65fve73x0/fvzjjz82DOPChQuKoqSnp7v4+fAXMS9m+fLl48ePr6ioSE9P5y4fAA9yswg/+OCDU6dO9ezZ074ShxXZ8A5xdoT9a3Z2du/evbdu3Tpp0qRwOPzdd9/JDggA7XBz1ui9995r/ZiLHw4fMQzDMIyXXnrps88+mzRpkuw4AHAjzEZBRPYZ8R1/v6IogUDg2WefnTlzZt++fWMWDQBcQxEiIrGzTLvX7eG+816oruuLFy8eN27czJkzBw0aFN+wABAlihCdpmlaOBy2X4uyzMrKysrK2r59++TJk6WmA4DOoQjRac5JMeFwWCzFffXVV6uqqmRHA4BOowgRDbsLA4HA008/PX369Ly8PNmhACAaFCGipGlabW3t2LFjq6qqBg8eLDsOAESJIkREzlmjrdYI9ujRo0ePHnffffeUKVPkhgSALqIIEZFz1qi9ZZp4Ivj666/Pnj1bZjgAcAlFiIicWyKIHRIMwzh06FBlZSWrIwAkDIoQP0HcC9U0be7cuUVFRfPmzRsyZIjsUADgGooQNyKeEaanp2dkZNxzzz1lZWWyEwGAyzxdhOfPn9c0N3dDjbPOblEW68+P9P5Ik2JM0xSnlB07downggASlaeLsFu3bu1u8eUX9q4rHvn8SO93Xhf9J341DOPRRx+tqKiIdLokACQATxdh2zPr/SWmw8EoPj/S+53XxWtN02bOnDly5Mi6urqhQ4d2JSQAeJynixDx4Zwdappmt27dunXrdv/990+dOlViKgCID4oQinJ9aqg4Qf7NN9+cNWuW7EQAECcUYRKJdFSyvUbwgQceKC8vHzVqVJyDAYBEFGESUVVV0zTxFNA5a0ZV1YqKioKCgoULFzIvBkCyoQiTi3PLNPE6JSUlFArt27evvLxcajQAkIMiTCJigxjxq2ma4ongiRMnZs6cKTsaAEhDESYXsUYwHA4bhnHvvfdOnTp17NixskMBgEwUYXIRO/WUlpYOGzZs2bJlw4cPl50IACSjCH0s0izQSEzTDAQCwWBQ7BcTo1QA4C8UoY9F2ilG1/VwOCxeiyGgZVli11CeCAJAKxRhAmr3HMHdu3eXlpaOGzdOYjAA8CCKMAGJ9YL2mRITJkwYOnRoQ0NDQUGB7GgA4DkUYQKyLEusEdQ0Tdf1gwcPTps2TXYoAPAoitDHxIpA8RRQrIuwzxEUawR//etfz5gxQ3ZMAPA0itDHxIpAMfgT/SeuG4bxs5/9bPLkyWPGjJEaEAB8gCJMEKqqiieCRUVFN99888qVK0eOHCk7FAD4AEXoY63OERRd+OSTT/JEEAA6jiL0NzE7NBgMqqr661//evr06bITAYDPUIQx1NmdX6L4fMuydF3funVrSUlJYWFhTP84AEhIFGFs2bM6O6KlpaXd9zuvi9emaYp/HDly5IABA9auXctpugAQHYowhpyzOjtCbI3W9v3O6/bsUDEcPHz4MLdDAaArKEIfEOsFlestGAwGNU07ceLEtGnTdF2XnQ4A/I0i9Ad7mKjr+h133DFhwoTCwkJaEAC6jiL0BzE7dNiwYf3791+3bh3zYgDALRShh0SaZWpPjXn++ecrKyvjmgkAEh1F6CHO8wXtcwQNw9A07fjx45WVlWIHUQCAiyhCD2l7jqCu65s2bSouLh43blxqaqrEbACQqChCb7HXCFqWNXjw4JycnNtuu2306NGycwFAwqIIPUSMApXr90iPHj3KrqEAEGsUYQw5zwt0sjfIVtqcI2gYhq7rb7zxRnl5eXp6uozUAJBcKMLYMk2z7U4xzrMDna91XV+/fv24cePGjx/fo0ePuAYFgGRFEcaQcxaok6Zp4XDYfo8YEQ4YMCA7O3vLli1FRUVxzAgAyY4ilKDVOYKGYViW9dJLL1VUVEhMBQDJiSKUQwwWNU3Tdf3VV1+dOnVqz549ZYcCgGREEcbQDc4jFGsEGxsbx4wZM3ny5Ozs7HgGAwDYKMLY0jRNDP7C4bBzjWBubm7v3r3vvPPOMWPGyM4IAEmNIowhcR6h/VrMDtV13TTNV155hSeCAOAFFGEMidWBiqKIeaHiieDLL79cVlbGvVAA8AiKMLbEY0LxRHDVqlWjR4+eOnVqbm6u7FwAgB9QhLElRoTZ2dlZWVl33XXX2LFjZScCAPyIp4vw3Llzkdaku8K+ddnF9zuvi9f2lmmBQMCyrNdff728vNyd0AAAV3m6CDMyMv7nf/4ndp8vpnF2/f3O686mDAQCR48enTJlSk5OThejAgBixNNF2Ha7am9ylp8YCOq6vnz58lGjRk2bNi0vL09iNgDAjXm6CP3CeTvUsqxevXplZmbu3Llz3LhxsqMBAH4CRegm8UTwH/7hH6ZOnSo7CwCgQyjCToi0ZZo4UNcwjOeff37y5Mk333xzfHMBAKLnfhF++umnkyZNunjxouufLJ2489n2taZpixcvHjFixMyZMwcMGCAvIACg01wuwnPnzjU2Nl66dMndj/Uge4JMjx49MjIyfv7znxcXF8uNBACIgptFaFlWY2Pj7t27ly5dGuk9V65ceeutt9pez8/PHzRoUNsPdDGeK+z+M00zJSXFNM1jx45NmTJFUZSrV69KjeZp4XC4ubmZL1GnXL161d60HR3R3NzMt1lnia+YB3/YdlYgEIh6oYGbRXjgwIEhQ4YsWbLkBu+5cOHCk08+2fZ6Q0ND2+03O7XILw7Es0Dx2jCM/fv3FxcXDx48OCHvA7srHA5funSJL1SnXLp0ybIse992/KTm5uaLFy+mpKTIDuInFy9eVFX12rVrsoN0VXp6ejAYjO73dqkICwoKTp06pSiKZVnvv//+22+//c4779z4t/Tu3fu9997r4Ofrut6VeK4TzwV1XZ87d+7w4cMXLVrEE8EOCofDlmVlZWXJDuInqqqmpqaGQiHZQXyjubk5EAjwbdYplmVlZGREXSGJoUtF+Pnnn9uv33vvvZMnT9pfTVVVP/zwQ4+vIohiy7SMjIy0tLRdu3aNHz8+LS0tvnkBAO5zbeuWhx56yLpOURTLsjzegsr1EV5b4uxcwW7EYDAYDAb/+Z//+cyZM+ydDQAJg3WE7Wj13FisEXz88cdLSkpGjBghKxUAIBZiUoR+n4AkRoFiOKiq6ty5c/Pz82tqalgpDwCJhxFh+0SXp6ampqam7tu3b/z48bITAQBiItmL0F6nZZqmc1JMKBQyTfOdd94RawQBAIkq2YvQeY6geC2eCD766KMTJkwYPXq01HQAgJhL9iK0iceBiqJMnz59yJAh9fX1bXe6AQAknqQuQuekHrFlWkpKyqOPPjpx4kSJqQAA8ZTURShGgfYTwffff7+0tFR2KABAXHm6CC9cuBDTz7fPEdy3b19xcfGoUaNi+scBADzI00VoGIau6x3ffb+lpUXTtLYbkDuvi9emaYp/LC8vHzRo0KJFiwYPHuxueACAL3i6CEOhUKe23hcN1/bMCud18VpRFF3XA4HAoUOHeCIIAMnM00XoIjH+s58IiuMyeCIIAEiWIrSHiYZh7N27d9y4cewaCgBQkqcIxYiwpKRkwIABy5YtGzJkiOxEAABPSKgijLTZt2mauq5rmvbUU0+VlJTEORUAwMsSqgjFZqHitRgCWpaVkpJiWdYHH3wwefJkqekAAF6UUEXoHBGKNYK6ru/evXvs2LHDhw+XGAwA4FkJVYT2TjHiiPnx48fn5eWtXLly6NChsqMBADwqoYpQjAKV62cqPfvsszwRBADcmKeL8MKFC+3uLCN6rt1zBFNSUhRFOXny5KRJkyQkBgD4jaeLMNLOMvbZga1e67p+9913FxUV5efnxy8lAMDPPF2EhtF+POfsUEVRxBPBwsLC3NzcNWvW0IIAgI7zdBFG0mp2qPj1yJEj3A4FAHSWL4tQuT4KDAQCqqr+5je/KSkpiTR8BADgBjxdHpcvX470r8RmMTt27CgsLBw+fDgtCACIjqf7Q7SdmB3qPEfQsqwRI0b07dt33bp1PBEEAHSFp4swLS3NnjXqnB2qKMoLL7zAGkEAQNd5ugjPnz+v67pYIxgOhwOBgKZpb7/9dklJSSgUkp0OAJAIPF2Eov/Ea13X77zzzlGjRhUWFnbr1k1uMABAwvB0ESrXZ4cOHTo0Ozt748aN7J0NAHCXJjvAjUyfPt0wDFVV/+7v/u5f/uVfaEEAgOs8XYQvvvji119//e233xYXF8vOAgBITJ6+NWoYRs+ePWWnAAAkMk+PCAEAiDWKEACQ1CjCaBw/fvy3v/2t7BR+8v333z/yyCOyU/jMiy+++O///u+yU/jJH//4x8OHD8tO4TOHDx/+4x//KDuFZBRhNP71X//1s88+k53CT86fP//GG2/ITuEzv/nNb06fPi07hZ98/fXXJ06ckJ3CZ06cOPH111/LTiEZRQgASGoUIQAgqVGEAICkpjpPe4+1P/zhD/Pnz584cWLc/sQY+eSTT9LS0jgBquMuXbp08uTJ6upq2UH85OOPP+7fv3///v1lB/GN77777ve///306dNlB/GT999/v6ioqFevXrKDdNW2bdvGjx8f3e+NaxEqivLb3/6WGUoAAHdNnz49Ly8vut8b7yIEAMBTeEYIAEhqFCEAIKlRhACApEYRAgCSGkUYvU8//TQtLU12Ct948803CwsLMzMzKyoqvvjiC9lxvO7s2bO1tbVZWVl1dXVnz56VHccH+AaLDj/HFIowaufOnWtsbLx06ZLsIP7w5Zdfrlq16siRI2fOnKmrq7v11ltlJ/K6AwcODBw48MyZMwMGDHjsscdkx/E6vsGiw88xgSKMhmVZjY2Nu3fvlh3EN06fPt3Q0FBaWpqamrp27dpTp07JTuR1x48fb2pqSklJaWpqOnbsmOw4Xsc3WBT4OWZjHWE09u/f/+233x46dEhV+QJ2Tjgcbmpq0jTtmWeekZ3F09LT07/55pvU1NTLly/36dPnz3/+s+xE/sA3WMfxc8zGiLBDCgoKVFVVVVVRlPfff//tt99+9NFHZYfyOucXTXj33XcnTpzYo0ePp556SmIwX7AsS3zpLMsKh8Oy4/gD32Adx88xJ0N2AH/4/PPP7dfvvffeyZMng8Gg+EdVVT/88MOpU6dKiuZdzi+aZVl79uz56KOPXnvttWHDhklM5Rc5OTl/+tOf8vPzv/rqq9zcXNlxvI5vsM7i55hTso+Iu4hbCh300UcfrV+//uOPPzaMH/7ulZ6eLjeSx+3YsSMlJeWRRx7Zs2dPS0vLwYMHZSfyNL7BuoKfY4wIEQ8ffPDBqVOnevbsaV9J8v/wftLevXtXrlyZl5dXXFz88ssvy47jdXyDoSuS/S8CAIAkx2QZAEBSowgBAEmNIgQAJDWKEACQ1ChCAEBSowgBAEmNIgQAJDWKEACQ1ChCAEBS+z/eaFaYfHvqagAAAABJRU5ErkJggg=="},"metadata":{"image/png":{"height":480,"width":600}},"execution_count":1}],"cell_type":"code","source":["f(x,y) = x - y\nplot(f ≪ 0) # \\ll[tab]"],"metadata":{},"execution_count":1}, {"cell_type":"markdown","source":"

This example is from Tupper's paper:

","metadata":{}}, -{"outputs":[{"output_type":"execute_result","data":{"text/plain":"Plot(...)","image/png":"iVBORw0KGgoAAAANSUhEUgAAAlgAAAGQCAYAAAByNR6YAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAIABJREFUeJzt3U+oXdX1wPF12+jDQd6Vpv6LeS+PYCIEhSgkiANtQdB5tIKYNPID05EWJxpwkEyqToRCKToKhIBEEEpBB85MQztQakAUatLWvpuQmBLxvuDg8WrPb5Ce530398855+599lprfz8QMMkzd/9Z+5x11j73nE5RFIWM8MILL8gf//hH+de//iWffvqp7NmzR0RErly5IgcPHpS///3vMjc3J7///e/lkUceGfVPAAAAZOlH4/7iySeflDNnzsj27ds3/Pkrr7wiDz30kJw7d06OHz8uzzzzjKytrUVvKAAAgBWbxv3FuKrUu+++K+fPnxcRkb1798rWrVvlo48+ksceeyxOCwEAAIwZm2CNcvXqVVlbW5M777xz/c+WlpZkeXl55M+vrq7K6urq+u//+9//yjfffCNbtmyRTqfTsMkAAADpFEUh165dk61bt8qPfjR6M7BWglXXa6+9JseOHYv5EQAAAEn0ej3Ztm3byL+rlWBt2bJFNm3aJJcvX16vYn311VeyuLg48uePHDkiL7300vrv+/3+2J/NWa/XS90Eta5duya7d++WL774QjZv3tzo31hYWAjcqnRix4qnsWqCtZgnjjOzy23tXLp0Sfbt2zcxXmpXsJ566il566235OjRo/Lxxx/LxYsX5dFHHx35s3NzczI3N1f3I7Ix5gucGLCysiIiInfffbfMz8/X+n+9bEPHihMv41MX6w7D6h5ncl07JdbQDybFwtgE6/Dhw/L+++/L5cuX5fHHH5fNmzfL+fPn5Y033pADBw7Izp075eabb5aTJ0/KTTfdFKXhHhGYcXg64JFQhcWaQ125rpVxWEPNjE2w3n777ZF/fscdd8iHH34YrUEAAADWjX0OFsIqioKrgAg6nY6bq81YMeJpjKYpikL6/b6IXL/nkzWHYeV6GPzV7XZFRKTb7WazVurI6RgSUtRvEYLSamjeFnno+PA2PtOwvjAot/hvWzm+rLtqqGABAAAERgUrEjL8sMoSvhdUrqpjLd3I83xDv8H4Y32OR4IVEIEWlqeTCAlVdTmsI8/zh7wMx3IO67cqtggBAAACo4IVABl7GB6v6qlcTeZx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27aRf/fuu+/Kr371KxER2bt3r2zdulU++uij2E0C4NSVK1fkk08+kWeffVZERPbv3y+9Xk/Onz+fuGUArBqXx0zLYZLdg3X16lVZW1tbf6ehyPUy7fLycqomQakDBw7I/fffL//3f/8n//73v1M3B4r1ej2566671p9L0+l0ZHFxkeMKpuI4gzqq5DDc5A7VTp8+LZ999pn89a9/lZ/+9Kfyy1/+MnWTADjDcQYxBE+wTpw4sX6j4PHjx8f+3JYtW2TTpk1y+fLl9T/76quvZHFxMXSTYMhw/JTxcNNNN8mvf/1r+dOf/pS4hdBsYWFBLl26JP/5z39ERKQoClleXua4gok4zqCuKjlM8ATr4MGD6zcKPvfccxN/9qmnnpK33npLREQ+/vhjuXjxojz66KOhmwRDBuPnF7/4hXz77bfrf/fOO+/IAw88kLB10O7222+XBx98UE6ePCkiIu+9955s27ZtwwvrgUHfffcdxxk0Mi2Hif6qnMOHD8v7778vly9fli1btsjmzZvXbzj9+uuv5cCBA/LPf/5Tbr75Zvnd734nP//5z2M2B4b84x//kP3798v3338vRVHIjh075Le//a0sLS2lbhoU+9vf/iaHDh2Sq1evyvz8vBw/flzuv//+1M2CUhxnMM24PGZaDsO7CAEAAALjJncAAIDA/h/K50sfFYcQMAAAAABJRU5ErkJggg=="},"metadata":{"image/png":{"height":480,"width":600}},"execution_count":null}],"cell_type":"code","source":["f(x,y) = (y-5)* cos(4sqrt((x-4)^2 +y^2))\ng(x,y) = x * sin(2*sqrt(x^2 + y^2))\n\nplot(Ge(f, g), xlims=(-10, 10), ylims=(-10, 10))"],"metadata":{},"execution_count":null}, +{"outputs":[{"output_type":"execute_result","data":{"text/plain":"Plot(...)","image/png":"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"},"metadata":{"image/png":{"height":480,"width":600}},"execution_count":1}],"cell_type":"code","source":["f(x,y) = (y-5)* cos(4sqrt((x-4)^2 +y^2))\ng(x,y) = x * sin(2*sqrt(x^2 + y^2))\n\nplot(Ge(f, g), xlims=(-10, 10), ylims=(-10, 10))"],"metadata":{},"execution_count":1}, {"cell_type":"markdown","source":"

This graph illustrates the algorithm employed to graph f ⩵ 0 where f(x,y) = y - sqrt(x):

","metadata":{}}, {"cell_type":"markdown","source":"

\"Algorithm\"

","metadata":{}}, {"cell_type":"markdown","source":"

The basic algorithm is to initially break up the graphing region into square regions. (This uses the number of pixels, which are specified by W and H above.)

","metadata":{}}, @@ -20,37 +20,39 @@ {"cell_type":"markdown","source":"

above is repeated until subdivision would be below the pixel level. At which point, the remaining \"1-by-1\" pixels are checked for possible solutions, for example for equalities where continuity is known a random sample of points is investigated with the intermediate value theorem. A region may be labeled \"black\" or \"red\" if the predicate is still ambiguous.

","metadata":{}}, {"cell_type":"markdown","source":"

The graph plots each \"black\" region as a \"pixel\". The \"red\" regions may optionally be colored, if a named color is passed through the keyword red.

","metadata":{}}, {"cell_type":"markdown","source":"

For example, the Devil's curve is a bit different with red coloring:

","metadata":{}}, -{"outputs":[{"output_type":"execute_result","data":{"text/plain":"Plot(...)","image/png":"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MYwXFmNmZibWrFnTzDDdjDRgfeELZ05inJycNKjp28TEhPFCX4wVFsN4YTHSDNP1/iEdBwBAbQhYAAA5W/GTn/zkJyM9gBUr4utf/3qcc04hdoyg4IwX+mWssBjGC4vRz3gZ6VmEAABVpEUIAJAzAQsAIGcCFgBAzoYWsNauXRtf+cpXYuPGjbFx48b49a9/3fWxL7/8cqxfvz6uuOKK2LZtm8sX1MipU6di69atsW7dutiwYUPcdNNNcfDgwczHHj58OFasWNEcUxs3boxDhw4N+YgZpffffz+uv/76WLduXVx77bXxzjvvZD7OnEK/c4t5hVS/uaXr/JIMyaWXXpr8+c9/XvBxJ06cSFauXJn89a9/TZIkSR588MHkBz/4waAPj4L4z3/+k/z+979PPv/88yRJkuQXv/hF8rWvfS3zsf/4xz+SycnJIR4dRXPDDTcke/fuTZIkSX7zm98kX/3qVzseY04hSfqfW8wrpPrJLb3ml8K1CF955ZXYtGlTrF+/PiIiHnjggdi3b9+Ij4phOe+88+LWW29tXrV8y5Ytcfjw4dEeFIV0/PjxeOutt+LOO++MiIjbb789pqenO6oS5hQizC0MRq/5ZagB6//+7//i6quvjnvuuSf+9a9/ZT7myJEjcemllzY/X7t2bXz00Udx+vTpYR0mBbJnz5647bbbut5/8uTJuOaaa2Lz5s3xyCOPxGeffTbEo2OUpqen4+KLL27uQ9NoNGLNmjVx5MiReY8zp5Cl19xiXiG1UG7pNb8MLWD94Q9/iL/85S/x9ttvx5e+9KX41re+NawfTUk99thjcfDgwXj88ccz77/44ovj2LFj8ac//Slee+21eOONN+LnP//5kI8SKJtec4t5hdRyc8vAAtazzz7bXBi2d+/eWLNmTUREnHvuufG9730v3njjjcx/t2bNmvjnP//Z/Pzw4cPz3qVSPe1jJSJi165dsX///njllVfii1/8Yua/Gxsbi5UrV0ZExIUXXhjf/va3u44rqmdqampeJSpJkjhy5EhzrkmZU2i10NxiXiHVT27pNb8MLGDdddddceDAgThw4EB885vfjE8//bR53759+2LTpk2Z/+7mm2+Ot99+O957772IiHjqqafijjvuGNRhUgCtY+Xuu++O3bt3x759++LVV1+N888/v+u/O378ePz3v/+NiIi5ubnYv39/13FF9axcuTI2b94czz33XEREvPjii7F69eq4/PLL5z3OnEKqn7nFvELEmTZxP7ml1/wylEvlfPDBB3H77bfHZ599FkmSxGWXXRZ79uyJtWvXRkTEzp07Y9WqVXH//fdHRMTvfve7+OEPfxinT5+Oq666Kp555pmYnJwc9GFSAEePHo2pqam47LLLYnx8PCLOvKP84x//GBHzx8r+/ftj586dsWLFijh9+nRf1XeQAAAAS0lEQVR84xvfiF27dsXY2NgofwWG6G9/+1ts3749Pvnkk5iYmIi9e/fG1VdfbU6hQ6+5xbxCu165pd/5xbUIAQByVrhtGgAAyu7/AUFwWWsekdv6AAAAAElFTkSuQmCC"},"metadata":{"image/png":{"height":480,"width":600}},"execution_count":null}],"cell_type":"code","source":["a,b = -1,2\nf(x,y) = y^4 - x^4 + a*y^2 + b*x^2\nr = (f ⩵ 0)\nplot(r, red=:red) # show undecided regions in red"],"metadata":{},"execution_count":null}, +{"outputs":[{"output_type":"execute_result","data":{"text/plain":"Plot(...)","image/png":"iVBORw0KGgoAAAANSUhEUgAAAlgAAAGQCAIAAAD9V4nPAAAABmJLR0QA/wD/AP+gvaeTAAAgAElEQVR4nOzdd3xUZdYH8HOeOzOZ9A4hEEKvoUpfSpQqIqEqICBSFAREKcKKugKCLF0B6SBKFUFA0SgICgIC0nuHQAghvU+7z3n/uCbLu+66lAl3JjnfP/IhQ7j3NzMhJ89z7n0eJCJgjDHGiiuhdwDGGGNMT1wIGWOMFWtcCBljjBVrXAgZY4wVa1wIGWOMFWtcCBljjBVrXAgZY4wVa1wIGWOMFWtcCBljjBVrXAgZY4wVa0+0EFqt1gsXLjzJMxYSVVWllHqncCdE5HA49E7hZvjb7GHxt9kjcDgcvNDmEy2E165d69q165M8YyHJycnJy8vTO4U7kVKmpqbqncLNZGZm2mw2vVO4E7vdnpGRoXcKN5ORkWG32/VOoTOeGmWMMVascSFkjDFWrHEhZIwxVqxxIWSMMVascSFkjDFWrHEhZIwxVqxxIWSMMVascSFkjDFWrBn0DvBXtm/fnpSUBAAxMTEhISF6x2GMMVboDh8+fPr0aQBo3LhxVFTUEzijSxfCcePGxcXFSSmrVKnSoEEDs9mMiHqHYowxVigcDofdbl+xYsWqVasQ8cMPP3wyhdClp0aTk5MtFovNZouOjvb29j5y5IjeiRhjjBWWMWPG+Pj4LFu2zG6322y2AwcOPJnzunQhrFq1qre3d8EocPDgwR06dLhy5Yq+qRhjjDnXqlWrWrduvX79em0FcEVRzGZz8+bNn8zZXXpqdMuWLQcOHHj99dcTExMB4PTp0+fOnfviiy9q1arVunXrwMBAvQMyxhh7LKdOnbp06dLy5csLxn+IGBMT89JLL9WuXfvJZHDpQhgWFtatWzdEXLRo0d69e+12u6qqM2bMIKK9e/c2atRI74CMMcYey7Jly5YvX+5wOBAREUuVKlWzZs1XXnmlU6dOTyyDS0+Narp27frjjz/26dNH+9RisVit1qZNmxoMht9//13fbIwxxh7N6NGjDQbDwoULLRaLti0iEY0ePfqHH354klUQ3KIQalasWJGXl/fUU095enpqXUMp5RtvvNGrV69r167pnY4xxtiDWrduXY8ePTZu3KhtPS2E8PDw+Oc//2mxWN58880nn8elp0bvh4gmk2nbtm07d+58++23k5KSEPHgwYOHDx+uV69evXr1Gjdu7O/vr3dMxhhj/9XFixdv3ry5fPnyPXv2ICIRIWKHDh169uzZqFEjk8mkSyq3KYSa0qVLDxgwQFGU+fPnnzhxQlVVVVU/+OADIvrll18aN26sd0DGGGP/1fz581euXGmz2YyIgOgfHFyhQoVBgwZ169ZNx1RuMzV6v379+h0+fLhHjx4GgwHyu4atWrXy8/M7duyY3ukYY4z9u3feecfHx2fx4sV5eXmqqhKiIsQ777xz6NAhfasguGkh1KxevTo+Pr569epaObTZbDk5Oe+8887rr79+8+ZNvdMxxhgDANiyZcvQoUPXr1+fm5srpUREo9E48b33biUkDBs2TO90AG43NXo/o9EYEhLy/fffb926dcqUKSkpKUT0ww8/KIpSq1at+vXrR0VFeXt76x2TMcaKqbi4uISEhGXLlsXGxhZ0BKOjo2NiYlq1auU6K0i7cSHUREZGjho1ymg0fvLJJ1evXtW6hm+99ZaUct++fdw1ZIwxvfzzn//UOoLapf5+fn7h4eGvvvpqr1699I72/7jx1Oj9Xn/99QsXLsTExHh6egKAzWaz2+3t2rULDw8/ceKE3ukYY6x4mTRpUsmSJVesWGGxWLSBoNFo/OCDD86fP+9qVRCKwIjwfl988cWdO3fatWt3/fp1AMjMzMzOzp42bVqVKlWGDh1apkwZvQMyxlgR9/333+/fv//LL7+8d++e9ogQ4q233ho6dKjrzIX+myJVCD09PStWrPjjjz+uW7du7ty5aWlpRLRp0yZFUapWrdqgQYPy5cubzWa9YzLGWBGUmJiYmpq6dOnSrVu3anOhiNi0adMOHTq0b9++YsWKegf8r4pUIdRUrFjxvffe8/Dw+PjjjxMTE6WUqqoOGTJEVdV9+/Y1adJE74CMMVYETZo0adWqVTabTfvU09MzKCjotdde69+/v77B/qci0iP8s7fffjs+Pr5jx47aRk42m83hcHTu3LlKlSra3seMMcacYvr06RUqVFi9erXVaiUiRVFMJtO0adNu377t+lUQiuSI8H5r1669cuVKly5d4uLiACApKSklJWXu3LnVq1d/6aWXwsPD9Q7IGGNubPfu3UePHv3888+1KzMAQAjx2muvDR482I0uyyjihdDX17devXrffPPNypUrP/vss8zMTCnl6tWrFUWpXLlyo0aNQkND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"},"metadata":{"image/png":{"height":480,"width":600}},"execution_count":1}],"cell_type":"code","source":["a,b = -1,2\nf(x,y) = y^4 - x^4 + a*y^2 + b*x^2\nr = (f ⩵ 0)\nplot(r, red=:red) # show undecided regions in red"],"metadata":{},"execution_count":1}, {"cell_type":"markdown","source":"

The plot function accepts the usual keywords of Plots and also:

","metadata":{}}, {"cell_type":"markdown","source":"
    \n
  • the number of pixels is a power of 2 and specified by plot(pred, N=4, M=5). The default is M=8 by N=8 or 256 x 256.

    \n
  • \n
  • the colors red and black can be adjusted with the keywords red and black.

    \n
  • \n
","metadata":{}}, {"cell_type":"markdown","source":"

This example, the Batman equation, Uses a few new things: the screen function is used to restrict ranges and logical operators to combine predicates.

","metadata":{}}, -{"outputs":[{"output_type":"execute_result","data":{"text/plain":"Plot(...)","image/png":"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IJmABQCQTMACAEgmYAEAJBOwAACSCVgAAMkELACAZAIW0HhFUURRFNHv9yMitv4FqIqABQCQTMACAEgmYAEAJBOwAACSCVgAAMkELACAZAIWAEAyAQsAIJmABQCQTMACAEgmYAEAJBOwAACSCVgAAMkELACAZAIWAEAyAQsAIJmABQCQTMACAEgmYAEAJBOwAACSCVgAAMkELACAZAIWAEAyAQsAIJmABQCQTMACAEgmYAEAJBOwAACSCVgAAMkELACAZAIWAEAyAQsAIJmABQCQTMACAEgmYAEAJBOwAACSCVgAAMkELACAZAIWAEAyAQsAIJmABQCQbGrAOnfuXPR6vfjjH/9Y1v4AADTexIB15cqVeOONN2J1dbXM/QEAaLyxAevmzZtx4sSJeP3112NpaansfQIAaLRd4z65trYWTz75ZDz22GN3/AGbm5uxubm59XG/34+IiH/+85+xsbGRtJvdc/369YjQjjAP/Qbmo8/kGLRjURTffbIY8emnnxarq6vFf//736IoiuLHP/5x8e67745+25bTp08XEWGz2Ww2m83W6W19fX0rH/WKoijOnz8fa2trERFx6tSpePnll7eGBr/66qtYXl6OM2fOxPPPPx+jRitYN2/ejGvXrsV9990XvV7vtu9nNhsbG7F3795YX1+P5eXlqncHGkG/gfnoMzmKoojr16/HAw88EHfd9e3sq15xSz3rdocPH44XX3wxjh49WspO8q2NjY1YWVmJfr/voIcZ6TcwH31mcayDBQCQbOwk92HvvfdeCbsBANAed//617/+ddU7wXh33313HD58OHbtumMOBv6ffgPz0WcW445zsAAAmI85WAAAyQQsAIBkAhYAQDIBq6YefPDBeOihh+LQoUNx6NCheOedd6reJai1zz//PJ544ok4ePBgPP744/HZZ59VvUtQa64zi+WRgRp755134tChQ1XvBjTCqVOn4uTJk3H8+PH4wx/+EMePH48///nPVe8W1JrrzOKoYAGNd/Xq1fjoo4/i2WefjYiIY8eOxfr6ely+fLniPQO6SsCqsZ/+9Kfx8MMPxy9/+cv497//XfXuQG2tr6/H7t27t9bx6fV6sW/fvvjiiy8q3jOoN9eZxRGwaur999+PTz/9NP7yl7/ED37wg/j5z39e9S4B0CKuM4tlodGaOH/+fKytrUVExAsvvBDPPffc1tf+9a9/xcGDB+P69etV7R7U2tWrV+PAgQNx7dq12LVrVxRFEbt3744PPvggDhw4UPXuQe25zuRTwaqJn/3sZ/Hxxx/Hxx9/HD/5yU/i66+/3vraW2+9FT/60Y8q3Duot/vvvz8effTRePPNNyMi4sKFC7Fnzx7hCia4ceOG68yCqWDV0D/+8Y84duxY/O9//4uiKGL//v1x9uzZePDBB6veNaitS5cuxfHjx+M///lPLC8vx7lz5+Lhhx+ueregllxnFk/AAgBIZogQACDZ/wEp/U9rZHP/ywAAAABJRU5ErkJggg=="},"metadata":{"image/png":{"height":480,"width":600}},"execution_count":null}],"cell_type":"code","source":["f0(x,y) = ((x/7)^2 + (y/3)^2 - 1) * screen(abs(x)>3) * screen(y > -3*sqrt(33)/7) \nf1(x,y) = ( abs(x/2)-(3 * sqrt(33)-7) * x^2/112 -3 +sqrt(1-(abs((abs(x)-2))-1)^2)-y)\nf2(x,y) = y - (9 - 8*abs(x)) * screen((abs(x)>= 3/4) & (abs(x) <= 1) )\nf3(x,y) = y - (3*abs(x) + 3/4) * I_((1/2 < abs(x)) & (abs(x) < 3/4)) # alternate name for screen\nf4(x,y) = y - 2.25 * I_(abs(x) <= 1/2) \nf5(x,y) = (6 * sqrt(10)/7 + (1.5-.5 * abs(x)) - 6 * sqrt(10)/14 * sqrt(4-(abs(x)-1)^2) -y) * screen(abs(x) >= 1)\n\nr = (f0 ⩵ 0) | (f1 ⩵ 0) | (f2 ⩵ 0) | (f3 ⩵ 0) | (f4 ⩵ 0) | (f5 ⩵ 0)\nplot(r, xlims=(-7, 7), ylims=(-4, 4), red=:black)"],"metadata":{},"execution_count":null}, +{"outputs":[{"output_type":"execute_result","data":{"text/plain":"Plot(...)","image/png":"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WHVPEASPWknY1eDapTmVZVxEo9EsWrSotrY2IyOjrq7OaDTCNA94d4YMGQLXxHK5/K233po2bZrU8foUTIQS++STT6xWa25urslkoigKivnCPz399NNz5swxGAwajeaW96I8AVy6issv+AnxDhPMnf8zMGiTpumdO3fu27cvNDTUaDRC+16n00VGRpaUlLRu3frkyZP33HPPvn37+vTps3///i5dupw8ebJ169YXLlzQarUGg0GhUFAUZTKZQkNDy8vLW7ZseebMmY4dOx48eLBXr1579+7t0aPH8ePH09PTL126FBcXd/nyZQggMjKy8QOB5bdCQkKc8ap4B7i/6/7xMncoNDQ0Pz/fYDDo9fqAgIDMzMza2lp492GInNFoXLp0qclk6tChw5AhQ6SO10dgInQ3nucNBgPcFVer1bNmzYJ6VzD5bMCAAW3atKmpqdFqtf3794+Li5M63sZAGvDMLxSXCg0NvZNFB6EEJc/zy5cvv+H54p/wy/r163me37JlC8dxGzduFOc8OK4QIi4YAo+vXbuW5/lNmzZxHLdp0yZ4hNzNOskymcyjlk50D6is5MknbUhIiHhp8vvvv69ataquro6iqO3bt1+8eJEQcuTIkWPHjj3yyCM9e/a0Wq0qlYqmaQlnrPoATITudvz48S5dusCyf+LsWkKITCZjGObll19+4IEHpI3wzl29etVx8VL/ce3aNcgfYh3XW4IJDMShnpm4ag/8KZZBIA7r5MHiFeI/if9FHKoqpjoYFwqtOvjv0NARV9prPDyz2QzDRmpqaprxYngZnU73ZysReqBu3bp169YNfv/222+ff/55m80Gfdpr16799ddfYRG0mJiY4uJiaUP1ajh9wn2OHj06atSoadOmQSuBXB9sotFo5HL5iRMnTCaTF2VBQggMOmAYxt+6RlmWhbotjQ/ki46OVqvVSqVyx44dNpvNZrNZrVabzWa5zmQyma+z2Www18JisdjtdqvVWlVVpdPpxP9itVotFovZbIafZrPZarXCeuvwX+DustVqnTZtGgzK79mzZyPhwah9hmHEouF+gmVZlmU9uVF4SxMmTDCbzR999JFcLofrZrHLoby8fOTIkU899ZTUMXorbBG6Q2VlZXFx8caNG9euXWu32+HclcvlCxYsKC0tjYmJYRjGw3tBbwm+QGGV18OHD8tkMj9ZdEZckhfWK/8z27Zt27dvHyGkTZs2boqMEELIe++91759e/LHypa3BO3Ixo/CZ+h0ujNnzly6dAlaVF6XCMFLL70UHh5OCLly5Up9ff0///lPGFOzevVqmqZhPbWOHTv61dzQ5vOLD4Dkfvrpp9deew2mbUFLIikpKTo6ety4cVKH1izQS0PTdG1t7YABAyiKqqurkzoodxDHNNXX1zfytJSUFElqZSkUijs5teBshCWE3BCV5A4fPjx48GCYA+rYKe11xDe3urr68OHDly5dKi4uhrfygQce0Ov1JSUlzV9kza9gInSVmTNnbt26tba2lmEY6M6CGzxqtTouLu7MmTNSB+gERqNRvKzW6/X+s6yMeGfXS1sVwPHOpbSRuEdlZaXdbveltYjDw8Ozs7PLysoyMzM5jquvr4eJPT179qytrQ0NDVWpVHPnzn344YeljtTTYSJ0vo0bN5aUlKxfv764uNhxyB/P8+3bt//qq698ZnyXXC4Xh2bwPO8/vTEwKZs4LMnrjaCHkGEYnzkhG3fD6eoz6T82NhaWfOrbty/02F++fJmiqPr6eoZhfv755/r6+m7durVt21bqSD0XJkLnmzp1amlpqViHMyEhoV27dteuXYuJibn33nvFMWA+IDAwkFwf+gg9M1JH5CZqtRqav15dSYCmaWgU+lIjqREwpAsG5cI4W6kjcprk5OTk5ORPPvlk165d5eXlkZGRO3fuNJvNPM+vWrVq7dq1b7/9NibCRmAidKa4uLiamhqLxQLNBfiunDp1qq+WgcjMzFSr1SaTyW63w2xIqSNyk9ra2kaW5PUW8K6R293p9BliISTyx4krPmP69OnTp0+H38eNG7ds2TKe56E3eNasWW+99dZzzz332WefSRukZ3JyIly3bt3rr79+5cqV9u3bL1q0yOcXOauqqvrss8/sdntOTk6vXr0qKyvhk0ZRlFwu/+qrr4YNG+bDFY3bt29fVla2efPmJ554wq+6RsV1d716SAIcBU3TMArRH0BzUK1Wl5aW+kzX6C198803//rXv0aNGrVt2zZCCM/zZrN53bp1RqOxoqKiXbt2Wq0Whpgi4txEWFxcPHbs2C1btnTs2PGLL76YMGECjB33SRaLpaampqCg4OOPP4ahE3v27IF/Yhhm9OjRKSkp3bt39+p7SHciICAgNjYWsoLvXWL/mdDQUPHWr9Sx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"},"metadata":{"image/png":{"height":480,"width":600}},"execution_count":1}],"cell_type":"code","source":["f0(x,y) = ((x/7)^2 + (y/3)^2 - 1) * screen(abs(x)>3) * screen(y > -3*sqrt(33)/7)\nf1(x,y) = ( abs(x/2)-(3 * sqrt(33)-7) * x^2/112 -3 +sqrt(1-(abs((abs(x)-2))-1)^2)-y)\nf2(x,y) = y - (9 - 8*abs(x)) * screen((abs(x)>= 3/4) & (abs(x) <= 1) )\nf3(x,y) = y - (3*abs(x) + 3/4) * I_((1/2 < abs(x)) & (abs(x) < 3/4)) # alternate name for screen\nf4(x,y) = y - 2.25 * I_(abs(x) <= 1/2)\nf5(x,y) = (6 * sqrt(10)/7 + (1.5-.5 * abs(x)) - 6 * sqrt(10)/14 * sqrt(4-(abs(x)-1)^2) -y) * screen(abs(x) >= 1)\n\nr = (f0 ⩵ 0) | (f1 ⩵ 0) | (f2 ⩵ 0) | (f3 ⩵ 0) | (f4 ⩵ 0) | (f5 ⩵ 0)\nplot(r, xlims=(-7, 7), ylims=(-4, 4), red=:black)"],"metadata":{},"execution_count":1}, {"cell_type":"markdown","source":"

The above example illustrates a few things:

","metadata":{}}, {"cell_type":"markdown","source":"
    \n
  • predicates can be joined logically with &, |. Use ! for negation.

    \n
  • \n
  • The screen function can be used to restrict values according to some predicate call.

    \n
  • \n
  • the logical comparisons such as (abs(x) >= 3/4) & (abs(x) <= 1) within screen are not typical in that one can't write 3/4 <= abs(x) <= 1, a convenient Julian syntax. This is due to the fact that the \"xs\" being evaluated are not numbers, rather intervals via ValidatedNumerics. For intervals, values may be true, false or \"maybe\" so a different interpretation of the logical operators is given that doesn't lend itself to the more convenient notation.

    \n
  • \n
  • rendering can be slow. There are two reasons: images that require a lot of checking, such as the inequality above, are slow just because more regions must be analyzed. As well, some operations are slow, such as division, as adjustments for discontinuities are slow. (And by slow, it can mean really slow. The difference between rendering (1-x^2)*(2-y^2) and csc(1-x^2)*cot(2-y^2) can be 10 times.)

    \n
  • \n
","metadata":{}}, {"cell_type":"markdown","source":"

A \"typical\" application

","metadata":{"internals":{"slide_type":"subslide","slide_helper":"subslide_end"},"slideshow":{"slide_type":"slide"},"slide_helper":"slide_end"}}, {"cell_type":"markdown","source":"

A common calculus problem is to find the tangent line using implicit differentiation. We can plot the predicate to create the implicit graph, then add a layer with plot!:

","metadata":{}}, -{"outputs":[{"output_type":"execute_result","data":{"text/plain":"Plot(...)","image/png":"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"},"metadata":{"image/png":{"height":480,"width":600}},"execution_count":null}],"cell_type":"code","source":["f(x,y) = x^2 + y^2\nplot(f ⩵ 2*3^2)\n\n## now add tangent at (3,3)\na,b = 3,3\ndydx(a,b) = -b/a # implicit differentiate to get dy/dx =-y/x\ntl(x) = b + dydx(a,b)*(x-a) \nplot!(tl, linewidth=3, -5, 5)"],"metadata":{},"execution_count":null}, +{"outputs":[{"output_type":"execute_result","data":{"text/plain":"Plot(...)","image/png":"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"},"metadata":{"image/png":{"height":480,"width":600}},"execution_count":1}],"cell_type":"code","source":["f(x,y) = x^2 + y^2\nplot(f ⩵ 2*3^2)\n\n## now add tangent at (3,3)\na,b = 3,3\ndydx(a,b) = -b/a # implicit differentiate to get dy/dx =-y/x\ntl(x) = b + dydx(a,b)*(x-a)\nplot!(tl, linewidth=3, -5, 5)"],"metadata":{},"execution_count":1}, {"cell_type":"markdown","source":"

Alternatives

","metadata":{"internals":{"slide_type":"subslide","slide_helper":"subslide_end"},"slideshow":{"slide_type":"slide"},"slide_helper":"slide_end"}}, {"cell_type":"markdown","source":"

Many such plots are simply a single level of a contour plot. Contour plots can be drawn with the Plots package too. A simple contour plot will be faster than this package.

","metadata":{}}, {"cell_type":"markdown","source":"

The SymPy package exposes SymPy's plot_implicit feature that will implicitly plot a symbolic expression in 2 variables including inequalities. The algorithm there also follows Tupper and uses interval arithmetic, as possible.

","metadata":{}}, -{"cell_type":"markdown","source":"

The package IntervalConstraintProgramming also allows for this type of graphing, and momre.

","metadata":{}}, +{"cell_type":"markdown","source":"

The package IntervalConstraintProgramming also allows for this type of graphing, and more.

","metadata":{}}, {"cell_type":"markdown","source":"

TODO

","metadata":{"internals":{"slide_type":"subslide","slide_helper":"subslide_end"},"slideshow":{"slide_type":"slide"},"slide_helper":"slide_end"}}, {"cell_type":"markdown","source":"

LOTS:

","metadata":{}}, {"cell_type":"markdown","source":"
    \n
  • Check out these graphs to see which can be done

    \n
  • \n
  • http://www.xamuel.com/graphs-of-implicit-equations/

    \n
  • \n
  • http://www.peda.com/grafeq/gallery.html

    \n
  • \n
  • branch cut tracking and interval sets are employed by Tupper, these could be added. This would allow some other functions such as mod, or ± to be defined.

    \n
  • \n
  • Tupper sketches out how to be more rigorous with computing whether a region is black or white.

    \n
  • \n
  • increase speed (could color 1-pixel regions better if so, perhaps; division checks; type stability).

    \n
  • \n
","metadata":{}} ], "metadata": { "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", "name": "julia", - "version": "0.4" + "version": "0.6" }, "kernelspec": { - "display_name": "Julia 0.4.0", + "display_name": "Julia 0.6.0", "language": "julia", - "name": "julia-0.4" + "name": "julia-0.6" } }, "nbformat": 4, - "nbformat_minor": 0 + "nbformat_minor": 2 } diff --git a/docs/examples.md b/docs/examples.md index f943286..2865315 100644 --- a/docs/examples.md +++ b/docs/examples.md @@ -22,7 +22,6 @@ is graphed over the default region as follows: ``` using Plots, ImplicitEquations -pyplot() a,b = -1,2 f(x,y) = y^4 - x^4 + a*y^2 + b*x^2 @@ -121,11 +120,11 @@ Uses a few new things: the `screen` function is used to restrict ranges and logical operators to combine predicates. ``` -f0(x,y) = ((x/7)^2 + (y/3)^2 - 1) * screen(abs(x)>3) * screen(y > -3*sqrt(33)/7) +f0(x,y) = ((x/7)^2 + (y/3)^2 - 1) * screen(abs(x)>3) * screen(y > -3*sqrt(33)/7) f1(x,y) = ( abs(x/2)-(3 * sqrt(33)-7) * x^2/112 -3 +sqrt(1-(abs((abs(x)-2))-1)^2)-y) f2(x,y) = y - (9 - 8*abs(x)) * screen((abs(x)>= 3/4) & (abs(x) <= 1) ) f3(x,y) = y - (3*abs(x) + 3/4) * I_((1/2 < abs(x)) & (abs(x) < 3/4)) # alternate name for screen -f4(x,y) = y - 2.25 * I_(abs(x) <= 1/2) +f4(x,y) = y - 2.25 * I_(abs(x) <= 1/2) f5(x,y) = (6 * sqrt(10)/7 + (1.5-.5 * abs(x)) - 6 * sqrt(10)/14 * sqrt(4-(abs(x)-1)^2) -y) * screen(abs(x) >= 1) r = (f0 ⩵ 0) | (f1 ⩵ 0) | (f2 ⩵ 0) | (f3 ⩵ 0) | (f4 ⩵ 0) | (f5 ⩵ 0) @@ -167,7 +166,7 @@ plot(f ⩵ 2*3^2) ## now add tangent at (3,3) a,b = 3,3 dydx(a,b) = -b/a # implicit differentiate to get dy/dx =-y/x -tl(x) = b + dydx(a,b)*(x-a) +tl(x) = b + dydx(a,b)*(x-a) plot!(tl, linewidth=3, -5, 5) ``` @@ -185,7 +184,7 @@ interval arithmetic, as possible. The package [IntervalConstraintProgramming ](https://github.com/dpsanders/IntervalConstraintProgramming.jl) -also allows for this type of graphing, and momre. +also allows for this type of graphing, and more. ## TODO @@ -202,4 +201,3 @@ also allows for this type of graphing, and momre. * Tupper sketches out how to be more rigorous with computing whether a region is black or white. * increase speed (could color 1-pixel regions better if so, perhaps; division checks; type stability). - diff --git a/src/ImplicitEquations.jl b/src/ImplicitEquations.jl index 478a7ac..afa5eed 100644 --- a/src/ImplicitEquations.jl +++ b/src/ImplicitEquations.jl @@ -1,12 +1,8 @@ -__precompile__(true) - module ImplicitEquations -using ForwardDiff -import ValidatedNumerics: Interval, diam, isempty +import IntervalArithmetic: Interval, diam, isempty using RecipesBase -using Compat include("predicates.jl") include("intervals.jl") diff --git a/src/intervals.jl b/src/intervals.jl index f7cab2e..33ad7ad 100644 --- a/src/intervals.jl +++ b/src/intervals.jl @@ -4,7 +4,7 @@ import Base: <, <=, ==, !==, >=, >, +, -, *, /, ^ ## a few definitionsn for ValidatedNumerics that don't fit in there: -## Validated numerics doesn't define these, as the order ins't a total order +## Validated numerics doesn't define these, as the order ins't a total order Base.isless(i::Interval{T}, j::Interval{S}) where {T<:Real, S<:Real} = isless(i.hi, j.lo) #<=(i::Interval{T}, j::Interval{S}) where {T<:Real, S<:Real} = <=(i.hi, j.lo) @@ -14,7 +14,7 @@ Base.isless(i::Interval{T}, j::Interval{S}) where {T<:Real, S<:Real} = isless(i. ## BInterval represents TRUE (true, true), FALSE (false, false) and MAYBE (false, true) -immutable BInterval <: Integer +struct BInterval <: Integer lo :: Bool hi :: Bool @@ -50,13 +50,13 @@ function negate_op(op) end ## OIinterval includes interval, if defined on interval and if continuous on interval -immutable OInterval <: Real +struct OInterval <: Real val::Interval def::BInterval cont::BInterval OInterval(val, def, cont) = new(val, def, cont) end - +(O::OInterval)(o::OInterval) = o Base.show(io::IO, o::OInterval) = print(io, "OInterval: ", o.val, " def=", o.def, " cont=",o.cont) ## some outer constructors... @@ -66,22 +66,16 @@ OInterval(a) = OInterval(a,a) # thin one... OInterval(i::Interval) = OInterval(i.lo, i.hi) Base.convert(::Type{OInterval}, i::Interval) = OInterval(i.lo, i.hi) -Base.convert(::Type{OInterval}, x::S) where {S<:Real}= OInterval(x) -Base.promote_rule(::Type{OInterval}, ::Type{ForwardDiff.Dual{N,B}}) where {N,B<:Real} = warn("defined to remove ambiguity") + Base.promote_rule(::Type{OInterval}, ::Type{A}) where {A<:Real} = OInterval ## A region is two OIntervals. -immutable Region +struct Region x::OInterval y::OInterval end -## not good for v0.5+ -#call(f::Function, u::Region) = f(u.x, u.y) - - -#ValidatedNumerics.diam(x::OInterval) = diam(x.val) -diam(x::OInterval) = diam(x.val) +ImplicitEquations.diam(x::OInterval) = diam(x.val) ## extend functions for OInterval ## Notice these return BIntervals -- not Bools @@ -116,7 +110,7 @@ rather a `BInterval` which allows for a "MAYBE" state. As such, a simple ternary operator, like `x > 0 ? 1 : NaN` won't work, to screen values. """ -screen(ex) = (ex == FALSE) ? NaN : 1 +screen(ex) = (ex == FALSE) ? NaN : 1 const I_ = screen # indicator function like! ## Functions which are continuous everywhere @@ -159,7 +153,7 @@ Base.tanh(x::OInterval) = sinh(x)/cosh(x) Base.coth(x::OInterval) = 1/tanh(x) function Base.asin(x::OInterval) - if x.val.hi < -1.0 || x.val.lo > 1.0 + if x.val.hi < -1.0 || x.val.lo > 1.0 OInterval(x.val, FALSE, FALSE) elseif (x.val.lo < -1.0) & (x.val.hi > 1.0) OInterval(Interval(-pi/2, pi/2), x.def & MAYBE, x.cont) @@ -208,7 +202,7 @@ Base.exp(x::OInterval) = OInterval(exp(x.val), x.def, x.cont) ## / ## division is slow function /(x::OInterval, y::OInterval) - ## 0 is the issue. + ## 0 is the issue. if 0.0 ∈ y.val ## maybe defined, maybe continuous OInterval(x.val/y.val, x.def & MAYBE, x.cont & MAYBE) @@ -218,7 +212,7 @@ function /(x::OInterval, y::OInterval) end ## log -function Base.log(x::OInterval) +function Base.log(x::OInterval) if x.val.hi <= 0 OInterval(x.val, FALSE, FALSE) elseif x.val.lo <= 0 @@ -254,7 +248,6 @@ function ^(x::OInterval, q::Rational) OInterval(val, x.def, x.cont) end -^(x::OInterval, r::ForwardDiff.Dual) = warn("defined to resolve ambiguity") function ^(x::OInterval, r::Real) r < 0 && return(1/x^(-r)) if x.val.hi < 0 @@ -287,7 +280,7 @@ end Base.max(x::OInterval, y::OInterval) = OInterval(max(x.val, y.val), x.def & y.def, x.cont & y.cont) Base.min(x::OInterval, y::OInterval) = OInterval(min(x.val, y.val), x.def & y.def, x.cont & y.cont) - + ## others sign, mod, ... function Base.sign(x::OInterval) @@ -304,7 +297,7 @@ function xy_region(u, L, R, B, T, W, H) c = B + py.lo * (T - B) / H d = B + (py.hi) * (T - B) / H delta = sqrt(eps()) - + x, y = OInterval(a+(u.x.cont==TRUE)*delta,b-delta), OInterval(c+0*delta,d-delta) x, y end @@ -324,7 +317,7 @@ function compute(p::Pred, u::Region, L, R, B, T, W, H) (fxy.def == FALSE) && return (FALSE) isempty(fxy.val) && return (FALSE & fxy.def) - + if p.op === == return((p.val ∈ fxy.val) ? MAYBE : FALSE) elseif negate_op(p.op) === == @@ -340,7 +333,7 @@ end ## build up answer function compute(ps::Preds, u::Region, L, R, B, T, W, H) vals = [compute(p, u, L, R, B, T, W, H) for p in ps.ps] - val = shift!(vals) + val = popfirst!(vals) for i in 1:length(ps.ops) val = ps.ops[i](val, vals[i]) end @@ -351,14 +344,14 @@ end Does this function have a zero crossing? Heuristic check. -We return `TRUE` or `MAYBE`. However, that +We return `TRUE` or `MAYBE`. However, that leaves some functions showing too much red in the case where there is no zero. """ function cross_zero(r::Pred, u::Region, L, R, B, T, W, H) x, y = xy_region(u, L, R, B, T, W, H) dx, dy = diam(x), diam(y) - + n = 20 # number of random points chosen λ1s, λ2s = [0.0; 1.0;rand(n)], [0.0; 1.0; rand(n)] β1s, β2s = [1.0; 0.0; rand(n)], [1.0; 0.0; rand(n)] @@ -370,7 +363,7 @@ function cross_zero(r::Pred, u::Region, L, R, B, T, W, H) val = (r.f(ll...) - r.val) * (r.f(ur...) - r.val) ((val <= 0)==TRUE) && return(TRUE) end - return(MAYBE) + return(MAYBE) end diff --git a/src/plot_recipe.jl b/src/plot_recipe.jl index b432f7d..b54834c 100644 --- a/src/plot_recipe.jl +++ b/src/plot_recipe.jl @@ -38,7 +38,7 @@ plot(f == 0) c,d,e,h = 1,1,1,1 f(x,y) = x*y g(x,y) =c*x^3 + d*x^2 + e*x + h -plot(eq(f,g), title="Trident of Newton") ## aka f ⩵ g (using Unicode\Equal[tab]) +plot(eq(f,g), title="Trident of Newton") ## aka f ⩵ g (using Unicode\\Equal[tab]) ## inequality f(x,y)= (y-5)*cos(4*sqrt((x-4)^2 + y^2)) @@ -49,7 +49,7 @@ plot(r, (-10, 10), (-10, 10), N=9, M=9) # (xmin, xmax), (ymin, ymax), """ plot_implicit = nothing -## Helpers to convert +## Helpers to convert linterp(A,B,a,b,W) = (a + A/W*(b-a),a + B/W*(b-a)) function xyrange(u, L, R, B, T, W, H; offset=0) @@ -90,12 +90,12 @@ end red=nothing, # or :red ... black=:black ) - + # L, R = extrema(x) # B, T = extrema(y) - xlims = get(d,:xlims, (-5,5)) - ylims = get(d, :ylims, (-5,5)) + xlims = get(plotattributes,:xlims, (-5,5)) + ylims = get(plotattributes, :ylims, (-5,5)) L, R = extrema(xlims) B, T = extrema(ylims) @@ -109,13 +109,13 @@ end if length(r) > 0 && red != nothing @series begin xs, ys = get_xs_ys(r, L, R, B, T, W, H) - + seriestype := :shape fillcolor := red linewidth := 0 x := xs y := ys - + () end end @@ -132,9 +132,7 @@ end xs, ys = get_xs_ys(b, L, R, B, T, W, H) x --> xs y --> ys - - () - -end + () +end diff --git a/src/predicates.jl b/src/predicates.jl index 2dfe153..1738fd5 100644 --- a/src/predicates.jl +++ b/src/predicates.jl @@ -14,12 +14,12 @@ inquality, and either another function or a real number. They are conveniently created by the functions `Lt`, `Le`, `Eq`, `Neq`, `Ge`, and `Gt`. The equivalent unicode operators: -* `≪` (`\ll[tab]`), -* `≦` (`\leqq[tab]`), -* `⩵` (`\Equal[tab]`), -* `≶` (`\lessgtr[tab]`) or `≷` (`\gtrless[tab]`), -* `≧` (`\geqq[tab]`), -* `≫` (`\leqq[tab]`) may also be used. +* `≪` (`\\ll[tab]`), +* `≦` (`\\leqq[tab]`), +* `⩵` (`\\Equal[tab]`), +* `≶` (`\\lessgtr[tab]`) or `≷` (`\\gtrless[tab]`), +* `≧` (`\\geqq[tab]`), +* `≫` (`\\leqq[tab]`) may also be used. The use of Julia's usual comparison operators is no longer supported. @@ -28,7 +28,7 @@ To combine predicates, `&` and `|` can be used. To negate a predicate, `!` is used. """ -type Pred <: Predicate +mutable struct Pred <: Predicate f::Function op val @@ -46,11 +46,6 @@ preds = [(:Lt, :≪, :<), # \ll for (fn, uop, op) in preds fnname = string(fn) @eval begin - @doc """ - `$($fnname)`: Create predicate for plotting. -The operators are `Lt` (≪, \ll[tab]), `Le` (≦ \leqq[tab]), `Ge` (≧ \geqq[tab]), `Gt` (≫ \gg[tab]), -`Eq` (⩵ \Equal[tab]), or `Neq` (≷ \gtrless[tab] or ≶ \lessgtr[tab]). -""" -> ($fn)(f::Function, x::Real) = Pred(f, $op, x) ($uop)(f::Function, x::Real) = ($fn)(f, x) ($fn)(f::Function, g::Function) = $(fn)((x,y) -> f(x,y) - g(x,y), 0) @@ -60,22 +55,6 @@ The operators are `Lt` (≪, \ll[tab]), `Le` (≦ \leqq[tab]), `Ge` (≧ \geqq[t eval(Expr(:export, uop)) end -# <(f::Function, x::Real) = Pred(f, < , x) -# <(f::Function, g::Function) = Pred((x,y) -> f(x,y) - g(x,y), < , 0) - - - -# <=(f::Function, x::Real) = Pred(f, <= , x) -# <=(f::Function, g::Function) = Pred((x,y) -> f(x,y) - g(x,y), <= , 0) - -# ==(f::Function, x::Real) = Pred(f, == , x) -# ## ==(f::Function, g::Function) this crosses up Gadfly and others so... -# eq(f::Function, g::Function) = Pred((x,y) -> f(x,y) - g(x,y), == , 0) -# ## unicode variants -# ⩵(f::Function, x::Real) = f == x -# ⩵(f::Function, g::Function) = eq(f,g) - - Neq(f::Function, x::Real) = Pred(f, !== , x) Neq(f::Function, g::Function) = Neq((x,y) -> f(x,y) - g(x,y), 0) @@ -91,17 +70,6 @@ Neq(f::Function, g::Function) = Neq((x,y) -> f(x,y) - g(x,y), 0) - -#>=(f::Function, x::Real) = Pred(f, >= , x) -#>=(f::Function, g::Function) = Pred((x,y) -> f(x,y) - g(x,y), >= , 0) - -#>(f::Function, x::Real) = Pred(f, > , x) -#>(f::Function, g::Function) = Pred((x,y) -> f(x,y) - g(x,y), > , 0) - -#Base.isless(x::Real, f::Function) = Ge(F, x) #(f >= x) -#Base.isless(f::Function, x::Real) = Lt(f, x) #(f < x) - - """ Predicates can be joined together with either `&` or `|`. Individual @@ -109,7 +77,7 @@ predicates can be negated with `!`. The parsing rules require the individual predicates to be enclosed with parentheses, as in `(f==0) | (g==0)`. """ -type Preds <: Predicate +mutable struct Preds <: Predicate ps ops end @@ -122,5 +90,3 @@ end (&)(r1::Pred, ps::Preds) = ps & r1 (|)(ps::Preds, r1::Pred) = Preds(vcat(ps.ps, r1), vcat(ps.ops, |)) (|)(r1::Pred, ps::Preds) = ps | r1 - - diff --git a/src/tupper.jl b/src/tupper.jl index 6baa58b..c6708b5 100644 --- a/src/tupper.jl +++ b/src/tupper.jl @@ -55,12 +55,12 @@ Return red, black and white vectors of Regions. """ function GRAPH(r, L, R, B, T, W, H) rects = break_into_squares(W, H) - + k = min(floor(Integer,log2(W)), floor(Integer,log2(H))) # largest square is size 2^k x 2^k reds = [Region(OInterval(u[1], u[2]), OInterval(u[3], u[4])) for u in rects] sizehint!(reds, W) - + red = Region[] # 1-pixel red, can't decide via check_continuity black = Region[] white = Region[] @@ -69,7 +69,7 @@ function GRAPH(r, L, R, B, T, W, H) reds = RefinePixels(r, reds, L, R, B, T, W, H, black, white, red) k = k - 1 end - red, black, white + red, black, white end ## Refine the region @@ -89,7 +89,7 @@ function RefinePixels(r, U_k, L, R, B, T, W, H, black, white, red) if (dx > 1) & (dy > 1) hx = div(dx,2); hy = div(dy,2) for i in 0:1, j in 0:1 - uij = Region(OInterval(x.lo + i*hx, x.lo + (i+1)*hx), + uij = Region(OInterval(x.lo + i*hx, x.lo + (i+1)*hx), OInterval(y.lo + j*hy, y.lo + (j+1)*hy)) push!(Uk_1, uij) end @@ -112,7 +112,7 @@ end ## for 1-pixel squares, check NaN and continuity ## Return TRUE (Black), FALSE (white) or MAYBE (red) function check_continuity(r::Pred, u, L, R, B, T, W, H) - + fxy = compute_fxy(r, u, L, R, B, T, W, H) ## check for NaN @@ -122,13 +122,13 @@ function check_continuity(r::Pred, u, L, R, B, T, W, H) if (fxy.def == FALSE) || (fxy.def == MAYBE) return(FALSE) end - + ## now check continuity, val = FALSE if (fxy.cont == TRUE) && ((r.op === ==) || (r.op === <=) || (r.op === >=)) ## use intermediate value theorem here val = val | cross_zero(r, u, L, R, B, T, W, H) - + end ## Now check for inequalities @@ -150,7 +150,7 @@ end ## Return TRUE, FALSE or MAYBE for predicates function check_continuity(rs::Preds, u, L, R, B, T, W, H) vals = map(r -> check_continuity(r, u, L, R, B, T, W, H), rs.ps) - val = shift!(vals) + val = popfirst!(vals) for i in 1:length(rs.ops) val = rs.ops[i](val, vals[i]) end diff --git a/test/runtests.jl b/test/runtests.jl index 3ce987c..cdd0762 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -1,5 +1,5 @@ using ImplicitEquations -using Base.Test +using Test f(x,y) = y-x diff --git a/travis.yml b/travis.yml deleted file mode 100644 index 0a1fe4e..0000000 --- a/travis.yml +++ /dev/null @@ -1,13 +0,0 @@ -language: julia -os: - - osx - - linux -julia: - - release - - nightly -notifications: - email: false -script: - - if [[ -a .git/shallow ]]; then git fetch --unshallow; fi - - julia -e 'Pkg.clone(pwd()); Pkg.build("ImplicitEquations"); Pkg.test("ImplicitEquations"; coverage=true)'; - - julia -e 'cd(Pkg.dir("ImplicitEquations")); Pkg.add("Coverage"); using Coverage; Coveralls.submit(Coveralls.process_folder())'; From a8f6afa00fe6b9dd59df87811a440437de7794d6 Mon Sep 17 00:00:00 2001 From: jverzani Date: Wed, 12 Sep 2018 16:25:42 -0400 Subject: [PATCH 2/4] RecipesBase version adjustment --- .travis.yml | 5 ++--- REQUIRE | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/.travis.yml b/.travis.yml index 0d27bbb..ac21c80 100644 --- a/.travis.yml +++ b/.travis.yml @@ -8,7 +8,6 @@ julia: - 0.7 - 1.0 - nightly -#script: -# - if [[ -a .git/shallow ]]; then git fetch --unshallow; fi -# - julia -e 'Pkg.init(); Pkg.clone(pwd()); Pkg.test("ImplicitEquations")' +script: + - if [[ -a .git/shallow ]]; then git fetch --unshallow; fi - julia -e 'using Pkg; Pkg.clone(pwd()); Pkg.test("ImplicitEquations")' diff --git a/REQUIRE b/REQUIRE index 53db339..1e8b59e 100644 --- a/REQUIRE +++ b/REQUIRE @@ -1,3 +1,3 @@ julia 0.7 IntervalArithmetic 0.15.0 -RecipesBase 0.6.0 +RecipesBase 0.5.0 From b9d4c48826b348ae0e998cd70c30e1600fad6d14 Mon Sep 17 00:00:00 2001 From: jverzani Date: Wed, 12 Sep 2018 17:12:24 -0400 Subject: [PATCH 3/4] Void -> Nothing --- src/plot_recipe.jl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/plot_recipe.jl b/src/plot_recipe.jl index 9e08f77..ca14ac7 100644 --- a/src/plot_recipe.jl +++ b/src/plot_recipe.jl @@ -58,7 +58,7 @@ function xyrange(u, L, R, B, T, W, H; offset=0) end -function get_xs_ys(map::Void, rs, L, R, B, T, W, H) +function get_xs_ys(map::Nothin, rs, L, R, B, T, W, H) xs = Float64[] ys = Float64[] for u in rs @@ -134,7 +134,7 @@ end M=8, # oddly m as keyword fails. 9/8 too slow red=nothing, # or :red ... black=:black, - map=nothing # union(Void, Function...) + map=nothing # union(Nothing, Function...) ) # L, R = extrema(x) From 271c8dcc4554cd954c827c5047ef37005a5df69f Mon Sep 17 00:00:00 2001 From: jverzani Date: Thu, 13 Sep 2018 10:28:21 -0400 Subject: [PATCH 4/4] typo --- src/plot_recipe.jl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plot_recipe.jl b/src/plot_recipe.jl index ca14ac7..3f40a57 100644 --- a/src/plot_recipe.jl +++ b/src/plot_recipe.jl @@ -58,7 +58,7 @@ function xyrange(u, L, R, B, T, W, H; offset=0) end -function get_xs_ys(map::Nothin, rs, L, R, B, T, W, H) +function get_xs_ys(map::Nothing, rs, L, R, B, T, W, H) xs = Float64[] ys = Float64[] for u in rs