zenna / Omega.jl

Causal, Higher-Order, Probabilistic Programming
MIT License
163 stars 17 forks source link

var for specific function #195

Open ga72kud opened 2 years ago

ga72kud commented 2 years ago

Could variance function used for different functions of random variables

using StatsPlots
using Distributions
using Omega
using Random
using Flux
#school upper lane
š¯’©up=normal(0.0, 2.0)
var(š¯’©up )
š¯’©bottom=š¯’©up+normal(2.2, 1.1)
mean(š¯’©bottom)
var(š¯’©bottom)

does it work with the lift function

MethodError: no method matching var(::Omega.NonDet.URandVar{typeof(Omega.liftreifyapply), Tuple{typeof(+), Omega.Prim.Normal{Float64, Float64}, Omega.Prim.Normal{Float64, Float64}}}, ::Omega.Inference.FailUnsatAlg) Closest candidates are: var(::RandVar) at /home/michael/.julia/packages/Omega/SOWrW/src/dist/defaults.jl:10 var(::RandVar, !Matched::Omega.Dist.AnalyticAlg) at /home/michael/.julia/packages/Omega/SOWrW/src/dist/distalgs.jl:8 var(::Any; corrected, mean) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Statistics/src/Statistics.jl:198 var(x::Omega.NonDet.URandVar{typeof(Omega.liftreifyapply), Tuple{typeof(+), Omega.Prim.Normal{Float64, Float64}, Omega.Prim.Normal{Float64, Float64}}}) at defaults.jl:10 top-level scope at 12_uptobottom_lane.jl:11 eval at boot.jl:360 [inlined]

Status ~/Julia_Projects/03_causal_inference/04_omega/Project.toml [052768ef] CUDA v2.6.3 [db1e321a] Callbacks v0.1.0 [7057c7e9] Cassette v0.3.10 [60f91f6f] CovarianceMatrices v0.10.4 [31c24e10] Distributions v0.23.12 [587475ba] Flux v0.11.6 [d0351b0e] InspectDR v0.4.3 [b964fa9f] LaTeXStrings v1.3.0 [b4f0291d] LazySets v1.56.1 [496038af] Lens v0.1.1 [1af16e33] Omega v0.1.1 https://github.com/zenna/Omega.jl.git#master [d330b81b] PyPlot v2.10.0 [1e97bd63] ReachabilityAnalysis v0.16.5 [f3b207a7] StatsPlots v0.14.30 [b8865327] UnicodePlots v1.4.0 [e88e6eb3] Zygote v0.6.17