Skip to content

Commit

Permalink
Update evaluator
Browse files Browse the repository at this point in the history
  • Loading branch information
itsubaki committed Jul 3, 2024
1 parent c854119 commit 9b62635
Showing 1 changed file with 6 additions and 9 deletions.
15 changes: 6 additions & 9 deletions evaluator/evaluator.go
Original file line number Diff line number Diff line change
Expand Up @@ -697,11 +697,10 @@ func (e *Evaluator) Enclosed(x *ast.CallExpr, decl *ast.GateDecl, outer *Environ
// set const
func(decl, args []ast.Expr) {
for i, d := range decl {
n := ast.Must(ast.Ident(d))
k := ast.Must(ast.Ident(d))
v := ast.Must(e.eval(args[i], outer))
enclosed.Const[n] = v
enclosed.Const[k] = v
}

}(decl.Params.List.List, x.Params.List.List)

// set qargs
Expand All @@ -713,7 +712,6 @@ func (e *Evaluator) Enclosed(x *ast.CallExpr, decl *ast.GateDecl, outer *Environ
enclosed.Qubit.Add(decl[i], qb)
}
}

return
}

Expand All @@ -728,17 +726,16 @@ func (e *Evaluator) Enclosed(x *ast.CallExpr, decl *ast.GateDecl, outer *Environ
}

// ctrl qargs
cdecl := append(make([]ast.Expr, 0), enclosed.CtrlQArgs...)
cdecl = append(cdecl, decl...)

for i := range cdecl {
ctrldecl := append(enclosed.CtrlQArgs, decl...)
for i := range ctrldecl {
if qb, ok := outer.Qubit.Get(args[i]); ok {
enclosed.Qubit.Add(cdecl[i], qb)
enclosed.Qubit.Add(ctrldecl[i], qb)
continue
}
}

}(decl.QArgs.List, x.QArgs.List)

// response
return enclosed
}

0 comments on commit 9b62635

Please sign in to comment.